私は、手動で入力して検索ループを実行し、見つかった項目のすぐ右の列の情報を選択しています。検索結果を保存してアドレスのリストを返します
すぐに結果を表示するのではなく、検索の最後にテーブルとしてMessagebox
に表示します。
したがって、私は何らかの種類のメモリスタックやアレイを必要としますが、これを実装する方法はわかりません。
私はこれまでにコードを書くことができました。検索はうまくいきました。情報収集はできません。誰かが助けることができますか?
Sub Find_Tag()
Dim lr&, i&
Dim myTag As String
lr = Range("E" & Rows.Count).End(xlUp).Row
myTag = InputBox("Enter Tag. " & Chr(10) & "Use the syntax bellow:" & Chr(10) & "" & Chr(10) & " J-XXXX")
For i = 1 To lr
If Cells(i, "E").Value = myTag Then
Cells(i, "E").Select
Cells(i, "G").Select
Cells(i, "P").Select
MsgBox Cells(i, "E").Value & " " & Cells(i, "G").Value & " " & Cells(i,"P").Value
End If
Next i
End Sub
リストボックスを持つuserformを作成し、それにアイテムを追加することができます(@Vityataの答えで@Shaiで述べた最大文字列の長さは避けてください)。私は 'Find'と' FindNext'も使用します。これは、すべての行をループするよりも高速です。 –
ダレンと同意する。または、オートフィルタで再作成範囲 – brettdj