find での検索について
find での検索について
以下のような繰り返しの処理を作成しました。
(実際のコードよりかなり簡略化して書いています)
for 1 to ***
a = sheets(1).cells.find(what:=ABC)
next
a = sheets(1).cells.find(what:=ABC)
常に変化する変数"ABC"を元に他のブックに検索をかけ、データをコピーしてくる
処理をしています。
つまずいているところは繰り返し中の検索は正常に処理出来ているが
nextを抜けた後の検索がうまくいかない点です。
具体的には他のブックに検索したい値(変数"ABC")があるのに検索できないというものです。
自分なりに以下のような切り分けを行いました。
1,nextを抜けた後の変数"ABC"の値が他のブックに存在しない変数を取得しているのではないか?
と思い直前で変数"ABC"を表示させてみたが正常
2,"ABC"の値に空白や,大文字、小文字等があり検索出来ないのではないか?
と思い調べてみたが正常
3,引き数LookInですべてのパターンを試したがうまくいかなかった。
途方に暮れて、手動で検索を行ってみました。
1,エラーで途中で止まってから他のブックをCtrl+Fで検索(マクロの実行途中で止まっているため、検索しようとしていた値、変数"ABC"がすでに検索する文字列(N):に入力されている)するが対象が見つからない。
2,検索しようとしていた値(他のブックに入力されている値)を直接コピーして検索をかけたところ
正常に検索できた
3,おかしいなと思いCtrl+Fで"検索する文字列(N):"をプルダウンメニューをみてみると全く同じ値がありました。試しになんどか交互に手動検索をかけてみましたが変数"ABC"から取得した方では検索できません。
検索しようとしていた値(他のブックに入力されている値)を直接コピーしたほうから検索出来ます。
どちらの値も違いはないように見えます。
どなたかこのような現象に心あたりがあるかたはいらっしゃいますでしょうか?
お礼
できました!ありがとうございました。