Step3 (このページ)は、Step2 の続きになっています。
VBAを使って、複数のワークシートに対してキーワードを検索する方法について解説します
Step2 を読まれた方 又は VBA で複数の検索結果を表示させる方法をすでに知っている方は、このままお読みください。Step1 ~ Step2 の内容は割愛しておりますので、まだ Step2 を読まれていない方 又は VBA で複数の検索結果を表示させる方法を知りたい方は、先に下記のページを読まれることをお勧めします。
簡単な処理(検索のみ)~ 実用的な処理 までを Step1 ~ Step7 の 7段階に区切っています。
▼Step1 ~ Step7 の違い
Step | キーワード | フォルダ | ファイル | シート | 検索対象 |
---|---|---|---|---|---|
1 | 1つ | 1つ | 1つ | 1つ | 1つ |
2 | 1つ | 1つ | 1つ | 1つ | 複数 |
3 | 1つ | 1つ | 1つ | 複数 | 複数 |
4 | 1つ | 1つ | 複数 | 複数 | 複数 |
5 | 1つ | 複数 | 複数 | 複数 | 複数 |
6 | 複数 | 複数 | 複数 | 複数 | 複数 |
7 | 複数 | 複数 | 複数 | 複数 | 複数 |
※ Step6に(処理速度やエラー回避などの)機能を追加したものがStep7となります。
▼まずはどのようなことができるかについてこちらをご覧ください
動画の説明
0:00
検索対象のワークシートの確認
0:32
検索キーワードの設定
0:47
マクロボタン(Step3)の作成
1:38
VBAを起動
1:40
検査結果の表示
1:50
検査結果の正しさの確認
3:05
検索結果の削除
Step3(プロシージャ)の説明
青色で囲まれている箇所 は、入れ替るワークシートがなくなるまで繰り返します
ファイルを開く
ワークシートを入れ替る
キーワードを検索する
検索結果を表示する
ファイルを閉じる
コードの説明(Step3)
▼Step3 の ソースコードについてはこちらから入手してください
Step3のソースコード ← クリックすると入手できます
(グレー色はコードの抜粋。黒色は説明文です。)
※ Step2 → Step3 にかけての変更箇所については、
(変更箇所) ‘Step3
‘↓Step3
(変更箇所)
‘↑Step3
と表示しています。
複数のワークシートを操作できるように変数を宣言
ワークシートのインデックスに使用します
インデックス:
Worksheets(1) の ”1” の部分
複数あるワークシートの内、1つ目を意味する
ワークシートの数だけ(For ~ Next の間の)処理を繰り返す
targetBk.Worksheets.Count:
ワークシートの数
各ワークシートに対して検索キーワードを検索
1つ目のキーワードが見つかった場所の直後の場所からキーワードを検索
G列に、ワークシート名を表示
2つ目のキーワードが見つかった場所の直後の場所からキーワードを検索
For ~ Next の 「Next」の記述
Step3(このページ)では、複数のワークシートに対してキーワードを検索する方法について説明しました
Worksheets() のインデックスを入れ替えることで、全てのワークシートに対して検索することができます
次のStep4 では複数のファイルについて検索する方法について解説します
おすすめ書籍
おすすめの書籍①(初級編)
ググってもVBAのことを調べることはできますが断片的な情報が多いです
この本で全体像を理解しておくとググったときに断片的な情報を補完してくれるのでより理解できるようになります
おすすめ書籍②(中級編)
メソッド&プロパティをたくさん知っているとできることは多くなっていきます
ただし全て使えるとは限りませんよね
「自分がしたいこと」を実現するために知っておくべきメソッド&プロパティを無駄なく調べることができ効率よくメソッド&プロパティを習得できます
おすすめ書籍③(上級編)
かなりボリュームはありますがとても読みやすいです
1章から順番に読んでいくことでVBAの構造が理解できるようになっています
読み終えるまでとても時間がかかりましたがとてもためになりました
VBAは作った後のメンテナンスが重要なのですが、この本を読むと
とてもメンテナンスのしやすいコードがかけるようになります
コメント