シート間で検索をする場合。
過去のブログにて、VBAにおいてFind メソッドの使用方法を記載したことがあります。エラーの処理についても大切ですが、Findメソッドをシート間で使用したい場合のアイデアについて記載します。同一のシート内でFindメソッドを利用する場合は、問題は生じにくいです。シートを切り替えて操作する際に、シートをActivateしないと操作できません。この事象は、Aというシート(以下:Aシート)内にあるセル(A1)の検索条件をBというシート(以下:Bシート)で探す場合に解決しなければならない問題となります。VBAにて、Sheets("B").Range("B:B").Find(What:=Sheets("A").range("A1").value,_ LookIn:=xlValues, LookAt:=xlWhole, SearchOrder:=xlByColumns)Aシート上の、A1セル内の値を、BシートのB列で探すことを意図していますが、上記のコードではエラーがでてしまいます。解決策としては、AシートのA1セルの値を変数に代入します。Dim i as string Findメソッドでは、検索条件に文字列を指定する必要があるため、stringi = Sheets("A").cells(1,1).valueSheets("B").Range("B:B").Find(What:= i ,_ LookIn:=xlValues, _LookAt:=xlWhole, SearchOrder:=xlByColumns)以上のVBAになれば、エラーがでなくなることは確認済みです。ちなみに、S
0