付録

ヤフー知恵袋tru********さんの質問、及び回答
【質問】
先ほど質問したのですが、わかりづらかったので取り消しして再度投稿いたします。 行いたいのは既存データをAND検索、OR検索して、別シートへ抽出するVBAを書きたいです。 Excelにsheet1とsheet2があります。sheet1にはデータが入った表があります。社内の総務宛の質問集ですが、1つのデータに質問と回 答が入っています。データは1000行くらいあります。 このままだと見辛いため、例えばsheet2の検索ボックスに「ABC」とキーワードを入れて検索することで、そのキーワードを含むデータの一覧を抽出し てsheet2の下にある表へ出したいです。 AND検索の右隣のボックスへ「ABC」と「DEF」と入力して検索することで、両方のワードを含むデータを抽出したいです。 OR検索の右隣のボックスへ「ABC」と「DEF」と入力して検索することで、どちらかのワードを含むデータを抽出したいです。 抽出したデータのクリア機能もつけたいです。 VBAの書き方を教えてください。
図

【回 答】
下記の内容で作成したファイルを添付します。下記sample3.xlsmクリック下さい。
「sample3.xlsm」ファイル
1.シート名称名称付け
既存データのシート名:「データ表」
AND検索結果書込みシート名:「AND検索」
OR検索結果書込みシート名:「OR検索」
2.「データ表」シートに「フォームコントロール」の「ボタン」を2個貼付ける。それぞれの名称を「AND検索」ボタン、「OR検索」ボタンとする。
図4
3.検索ワードを書き込む表を「AND検索」、「OR検索」のそれぞれのシート上部に作成する。図5
4.依頼の検索ワードは「データ表」シート内では単純に書かれていますが、通常は長い文書中に含まれているのが大半なので、文書中にあっても検索できるよ うにしています
5. データ表の右端のL列、M列にその行が検索されたことが分かるように「済」を書き込むようにしています。
「済」の表示のある行は、既に検索済みであるためその後、ボタンをクリックしても検索対象から除外されます。
6.「AND検索」ボタンのClickのプロシージャに以下のプログラムを書き込みます。
図2
7.「OR検索」ボタンのプロシージャに以下のプログラムを書込みます。図3
各ボタンをクリックすると検索結果をそれぞれのシートに書き込まれます。

サイドバータイトル
inserted by FC2 system