Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


13923 / 76738 ←次へ | 前へ→

【68315】Re:VLOOKUPを使ったデータの参照
発言  UO3  - 11/2/23(水) 13:32 -

引用なし
パスワード
   ▼ケメ子 さん:

こんにちは

現在のコードとシートでデバッグ大変だと思いますが、がんばってください。

それとは別に、

1.まず、このレスで、現在の構えで気になっているところをメモしてみます。
2.次のレスで、気になっている部分の解消策の1つとして、新しいコードの(あくまで参考)
  ご提案と、そのコードで使われている、ちょっとなじみがないかもしれない記述の説明を
  します。
3.で、最後のレスで、その新しいコードを参考としてアップします。

新しいコードによる運用が、ケメ子さんにとって、保守しやすいものか、かえって保守が大変になるか
これはケメコさんのご判断で。

ということで、まず。

・各データのレイアウト規定を外出しにするということは、いいことだと思いますが、
 現在のコードから把握した限りではWorkSheet(1)にセットされている各情報が、飛び飛びのセルに
 配置されています。もちろん、実際のシートには、コメント等があって、どこの情報が何なのか
 お分かりになる仕掛けでしょうが、私の経験から言えば、ある程度まとまって記述されているほうが
 メンテナンスが楽だと考えます。
・本来は、ここで登録されたコード等が、列記号として妥当か、行番号として妥当か 等々のチェックを
 いれないと、実行時の障害になる可能性があります。とはいうものの、それをコード内でチェックすると
 VBAのコンパイルと同じようなロジックが必要になってくるでしょうから、ここは、「正しく登録されている」
 という前提でいくのが妥当でしょうね。(気にはなりますが)
・ただ、たとえば B6:D といったような コードで使うイメージで登録するのではなく、あくまで
 B とか、コピー列数としての3 といった登録にすべきかと。
・それとは別の懸念として、処理時点で、登録された情報を参照しているところが少なくないですね。
 ブック.シート.セル領域.プロパティ
 この記述があるとVBAは、まずブックのコレクションを見に行き、そのなかから指定ブックの情報が
 格納されているポインタを取得して、指定ブック情報を見ます。で、その中にあるシートコレクション
 のポインタを取得して、シートコレクションを見に行きます。次に、そこにあるシート情報に格納されている
 セル領域コレクションのポインタを取得して・・・・・・
 もちろん、これらのチェイニングは、あっというまですが、それでもループの中で毎回、これをやると
 処理時間に悪影響を与えます。(エクセルのセルへのコンタクトは結構、処理負荷が大きい)
 値が都度変化するものであればやむをえませんが、今回の場合は最初から最後まで固定値です。
 ですから、これらも、処理の最初で変数に取り込み、実行時は変数を相手にするべきだと思います。
 
といったことを感じました。
で、私なりのコード案を書いてみました。次と、その次のレスでご説明します。

0 hits

【68149】VLOOKUPを使ったデータの参照 ケメ子 11/2/7(月) 0:02 質問
【68152】Re:VLOOKUPを使ったデータの参照 UO3 11/2/7(月) 11:14 発言
【68162】Re:VLOOKUPを使ったデータの参照 ケメ子 11/2/7(月) 22:43 発言
【68164】Re:VLOOKUPを使ったデータの参照 UO3 11/2/8(火) 12:45 発言
【68173】Re:VLOOKUPを使ったデータの参照 ケメ子 11/2/8(火) 22:04 発言
【68174】Re:VLOOKUPを使ったデータの参照 UO3 11/2/9(水) 11:43 発言
【68175】Re:VLOOKUPを使ったデータの参照 UO3 11/2/9(水) 12:12 発言
【68176】Re:VLOOKUPを使ったデータの参照 UO3 11/2/9(水) 12:25 発言
【68177】Re:VLOOKUPを使ったデータの参照 UO3 11/2/9(水) 13:09 発言
【68180】Re:VLOOKUPを使ったデータの参照 ケメ子 11/2/9(水) 22:11 発言
【68182】Re:VLOOKUPを使ったデータの参照 UO3 11/2/10(木) 12:26 回答
【68183】Re:VLOOKUPを使ったデータの参照 ケメ子 11/2/10(木) 23:35 発言
【68232】Re:VLOOKUPを使ったデータの参照 ケメ子 11/2/16(水) 23:15 質問
【68237】Re:VLOOKUPを使ったデータの参照 UO3 11/2/17(木) 10:29 回答
【68240】Re:VLOOKUPを使ったデータの参照 UO3 11/2/17(木) 10:43 発言
【68243】Re:VLOOKUPを使ったデータの参照 UO3 11/2/17(木) 11:02 回答
【68254】Re:VLOOKUPを使ったデータの参照 ケメ子 11/2/17(木) 22:39 発言
【68255】Re:VLOOKUPを使ったデータの参照 UO3 11/2/17(木) 23:08 発言
【68259】Re:VLOOKUPを使ったデータの参照 ケメ子 11/2/18(金) 21:14 発言
【68303】Re:VLOOKUPを使ったデータの参照 ケメ子 11/2/22(火) 0:44 質問
【68306】Re:VLOOKUPを使ったデータの参照 UO3 11/2/22(火) 9:28 発言
【68307】Re:VLOOKUPを使ったデータの参照 UO3 11/2/22(火) 9:50 発言
【68308】Re:VLOOKUPを使ったデータの参照 UO3 11/2/22(火) 10:27 発言
【68314】Re:VLOOKUPを使ったデータの参照 ケメ子 11/2/23(水) 0:19 発言
【68315】Re:VLOOKUPを使ったデータの参照 UO3 11/2/23(水) 13:32 発言
【68316】Re:VLOOKUPを使ったデータの参照 UO3 11/2/23(水) 13:36 発言
【68317】Re:VLOOKUPを使ったデータの参照 UO3 11/2/23(水) 13:38 回答
【68321】Re:VLOOKUPを使ったデータの参照 UO3 11/2/23(水) 22:04 発言
【68322】Re:VLOOKUPを使ったデータの参照 ケメ子 11/2/23(水) 22:04 質問
【68331】Re:VLOOKUPを使ったデータの参照 UO3 11/2/24(木) 11:46 発言
【68333】Re:VLOOKUPを使ったデータの参照 UO3 11/2/24(木) 11:47 発言
【68346】Re:VLOOKUPを使ったデータの参照 ケメ子 11/2/24(木) 22:46 発言
【68421】Re:VLOOKUPを使ったデータの参照2 ケメ子 11/3/3(木) 20:15 質問
【68425】Re:VLOOKUPを使ったデータの参照2 UO3 11/3/4(金) 12:32 回答
【68426】できました!! ですが・・・ ケメ子 11/3/4(金) 20:31 質問
【68429】Re:できました!! ですが・・・ UO3 11/3/4(金) 21:51 発言
【68431】Re:できました!! ですが・・・ UO3 11/3/5(土) 16:58 回答
【68432】Re:できました!! ですが・・・ ケメ子 11/3/5(土) 18:53 発言
【68441】プロシージャの追加場所 ケメ子 11/3/7(月) 21:21 質問
【68442】Re:プロシージャの追加場所 UO3 11/3/7(月) 21:59 回答
【68479】\(^o^)/ ケメ子 11/3/9(水) 20:58 お礼

13923 / 76738 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free