エクセルとの付き合いは〇十年のパート事務員が僭越ながら開催しています、エクセル塾です。
前回は、検索と置換の基本、でした。
【Excel/初心者】エクセル塾:検索と置換①基本
1.検索と置換の便利ワザ
エクセルの検索と置換の機能を使った便利ワザ、検索のコツなどをご紹介します。
(1)ワイルドカードを利用した検索
例えば、見栄えを整えるために文字と文字の間に空白が入っていたりいなかったりする以下のような表があったとします。

ここから「川越市」を探したいけど、「川越」で検索した場合、川と越の間に空白が入っているためヒットなし、となってしまいます。

検索ではワイルドカードが使えるので、こんな時はワイルドカードを利用するとよいです。
ちなみにワイルドカードとは
ワイルドカードとは、不特定の文字列を指定する時に使うための記号を指します。
ワイルドカードを使うことであいまいな文字列を指定することが出来ます。
引用元:https://office-hack.com/excel/wildcard/
エクセルのワイルドカードには以下のものがあります。
- *(アスタリスク):何文字でもいい文字列。0文字でもいい。
「田中*子」→「田中花子」「田中 未知子」「田中子」が当てはまる - ?:1文字の文字列
「田中?子」→「田中花子」は当てはまる。「田中 美智子」「田中子」は当てはまらない
「田中??子」→「田中美智子」は当てはまる。「田中花子」「田中子」は当てはまらない
ほかにも「~(チルダ)」もありますが、ちょっとややこしいのでここでは割愛します。
よく使うのは圧倒的に「*(アスタリスク)」です。
さて、検索に話を戻します。
検索する文字列欄に「川*越」と入力します。すると検索ができました!

ワイルドカードと「セル内容が同一であるものを検索する」等を組み合わせることにより、様々な意図の検索ができます。
(2)関数の置換
検索対象を数式にすることで、関数の内容を置換することができます。
関数で参照しているシートを入れ替えるとき、参照範囲を変更したいときなど、便利です。
やってみましょう。
「1学期」「2学期」「3学期」のシートの点数を集計する「集計」シートを作成しました。

「集計」シートのそれぞれの学期の列に各学期の平均点数を持ってくる関数を入力していきます。
「集計」シートの列にVLOOKUPで出席番号をキーにして「1学期」シートの平均点数を持ってくる式を入力します。検索値の出席番号の列を絶対参照にするのを忘れずに!

この式をコピーして、2・3学期(D・E列)の列に貼り付けします。

2学期の列の関数を変更します。
いまは関数の内容が「1学期」シートを参照しているので、「2学期」のシートを参照するように置換で関数の内容を変更します。
①「集計」シートの2学期のセル範囲(D列)をドラッグして選択する
②Ctrl+Hキーで検索と置換ボックス(置換のタブ)を表示する
③検索する文字列:1学期
置換後の文字列:2学期
と入力する
④「すべて置換」をクリック


同様の手順で3学期の列も「1学期」→「3学期」に関数の内容を置換します。
結構便利ですよ!
(3)日付の検索
日付はどうやって検索するのがよいのでしょうか。
結論は
日付を検索したいときは
2022/4/10 や 4/10 2022/4 のように yyyy/m/d m/d yyyy/m の形で検索するとヒットする。
さらに、書式を指定すると、書式による絞り込みも可能。
でした。
ここから下はネチネチ試してみた軌跡です。
以下のような表があります。2行目以下は書式が異なりますが、すべて2022年4月10日です。
一番上の行の「全部2022年4月10日」はただの文字列で、日付ではありません。

検索する文字列に「4/10」と入力してみました。
すると、4/10の日付のセルはすべてヒットしました!
一番上の行の「全部2022年4月10日」はもちろんヒットしませんでした。

検索する文字列に「4月10日」と入力してみました。
すると、4/10の日付のセルはすべてヒットせず。
一番上の行の「全部2022年4月10日」だけがヒットしました。

むむっ?なにやら「書式」というボタンがあるではないですか。
4月10日の書式を設定したら、検索してくれるかも!と「書式」ボタンから「m月d日」の書式をセットします。

やはりだめでした!

では、検索する文字列を「4/10」とし、書式を「m月d日」を指定した状態で検索すると
→書式が「m月d日」の日付の「4月10日」だけがヒットしました!

なお、書式をセットした場合、次の検索をするときにも書式の指定が残っていることがあります。
「書式」の▼から「書式検索のクリア」をクリックし書式の指定を解除することを忘れずに!
結論:日付を検索したいときは
2022/4/10 や 4/10 2022/4 のように yyyy/m/d m/d yyyy/m の形で検索するとヒットする。
さらに、書式を指定すると、書式による絞り込みも可能。
2.書式の検索と置換
(1)書式の検索
1の(4)の日付の検索でちょっとやりましたが、書式を検索することもできます。
下の表で「オレンジに塗りつぶしのセル」を検索してみます。

①Ctrl+Fキーで検索と置換ボックスを表示させます(リボンからでもOK)
②「書式」の横の▼ボタンをクリック→「書式」をクリック
※「書式」ボタンがない、という場合はオプションが表示されていない状態です。「オプション」ボタンをクリックしてオプション表示画面に切り替えると表示されます。

③検索したい書式を指定します。オレンジに塗りつぶしのセルを検索したいので、塗りつぶしタグからオレンジを指定し、「OK」ボタンをクリックします。
※②で「セルから書式を選択」をクリックし、検索したい書式のセルをクリックすると、自動で検索したい書式が指定されます。

④プレビューに検索したい書式が表示されています。
「すべて検索」をクリックします。(ひとつひとつ検索したい場合は「次を検索」)

⑤オレンジのセルが検索できました!

(2)書式の置換
書式を検索して、指定した書式に置換することもできます。
やってみましょう。
先ほどの表で、オレンジに塗りつぶしのセルを緑に置き換えしたいと思います。
⓵Ctrl+Hキーで検索と置換ボックスを表示させます。置換タブが表示されている状態です。
(リボンから置換をクリックして表示させてもOKです。)
なお、余計なところまで置換したくないので、置換したい範囲をドラッグして選択しておきます。
オプションが表示されていない場合は「オプション」ボタンをクリックして「書式」ボタンを表示するようにします。
②検索する文字列の右の「書式」ボタンをクリックします
③オレンジに塗りつぶしのセルを検索したいので、オレンジの塗りつぶしを指定します。

④今度は置き返したい書式を指定します。
置換後の文字列の右の「書式」ボタンをクリックして、緑の塗りつぶしを指定します。

⑤「すべて置換」ボタンをクリックします。
オレンジが緑に置換されました!

(3)書式検索のクリア

書式が検索置換できるなんて、今回初めて知りました(お恥ずかしい)
便利ですね!
検索と置換はこれでおしまいです。
お読みいただきありがとうございました。
コメント