• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:表を検索するVBAについての質問です。)

VBAを使用して表を検索する方法

このQ&Aのポイント
  • 表を検索するVBAのプログラムを組む際にエラーが発生してしまう問題について、解決策を教えていただきたいです。
  • 初心者のため、VBAを使用して表を検索する方法がわかりません。どなたか教えていただけると助かります。
  • ExcelのSheet1に記載されている文字列を使用して、Sheet2から該当する行のB列の値を取得したいです。現在、プログラムを組んでいますが、エラーが発生しています。どうすれば解決できるでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

こんにちは。みっちょです。 単純ループでの検索は遅いと思うのですが、またコード的に気になるところも多少あるのですが、ご理解に易しいように、できるだけリンク先の趣向に沿ったまま簡易化してみました。一応、最低限動くと思いますので。 Sub 単純検索()   Dim LL As Long, tI As Long, tS As String, tT As String   tS = CStr(Sheets("Sheet1").Cells(1, 1).Value)   LL = Sheets("Sheet2").Cells(Rows.Count, 1).End(xlUp).Row   For tI = 1 To LL     tT = CStr(Sheets("Sheet2").Cells(tI, 1).Value)     If (InStr(1, tT, tS, vbTextCompare) <> 0) Then       tS = CStr(Sheets("Sheet2").Cells(tI, 2).Value)       MsgBox tS     End If   Next End Sub 『MsgBox tS』の部分でtSにはSheet2の対応するB列の内容が入っていますので、あとは煮るなり焼くなりお好きなように… こんな感じでいかがでしょう?

gori200088
質問者

お礼

回答ありがとうございます。 上記のソースをいじって試したところ動くようになりました。 実行速度もそれほど気にならないので、問題ないかと思います。 ありがとうございます。

その他の回答 (1)

  • bin-chan
  • ベストアンサー率33% (1403/4213)
回答No.1

質問者さまが書いて実行しようとしているVBAソースそのものと、 そのソースのどこで・どのようなエラーになるのかを示してください。

gori200088
質問者

お礼

お返事ありがとうございます。 返事が遅くなりましたが、何とか動く状態になりました。 また、困った事があった時は宜しくお願い致します。

関連するQ&A