- 締切済み
エクセル 複数列の検索、該当箇所を表示させたい
宜しくお願い致します。 一つのシートに複数列で数千のデータの検索、表示をさせたいです。複数列とは言っても同じ13桁の数字が入っています。 宜しくお願い致します。
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- tom04
- ベストアンサー率49% (2537/5117)
No.2です。 投稿後気づきました。 いちいちコードを訂正するより、 入力画面を表示させそこに検索データを入力した方が間違が少なく、手間もかからないですね。 前回のコードはすべて消去して↓のコードに変更してください。 (やり方は前回と一緒です) Sub Sample2() 'この行から Dim c As Range, myRng As Range, myVal As Variant myVal = InputBox("検索したいデータを入力") With ActiveSheet .Cells.Interior.ColorIndex = xlNone Set myRng = .Cells.Find(what:=myVal, LookIn:=xlValues, lookat:=xlWhole) If Not myRng Is Nothing Then For Each c In .UsedRange If c = myVal Then Set myRng = Union(myRng, c) End If Next c myRng.Interior.ColorIndex = 6 Else MsgBox "該当データなし" End If End With End Sub 'この行まで 何度もごめんなさいね。m(_ _)m
- tom04
- ベストアンサー率49% (2537/5117)
こんばんは! >検索、表示をさせたいです 「表示」をさせるというのがどうするのか判らないので (単に羅列してもすべて同じデータになると思われます) そこでセルを「黄色」に塗りつぶすVBAにしてみました。 画面左下の操作したいSheet見出し上で右クリック → コードの表示 → VBE画面のカーソルが点滅しているところに ↓のコードをコピー&ペースト → Excel画面に戻りマクロを実行してみてください。 (Alt+F8キー → マクロ → マクロ実行です) Sub Sample1() 'この行から Dim c As Range, myRng As Range ActiveSheet.Cells.Interior.ColorIndex = xlNone Set myRng = Cells.Find(what:=検索したい数値, LookIn:=xlValues, lookat:=xlWhole) If Not myRng Is Nothing Then For Each c In UsedRange If c = 検索したい数値 Then Set myRng = Union(myRng, c) End If Next c myRng.Interior.ColorIndex = 6 End If End Sub 'この行まで ※ コード内の「検索したい数値」の部分を「数値そのもの」に変更してマクロを実行してください。(2ヶ所) ※ 文字列の場合はダブルクォーテーションで囲む必要があります。m(_ _)m
- aokii
- ベストアンサー率23% (5210/22062)
検索機能を使ってみてください。