【Officeシリーズ 】関数の検索条件にワイルドカード文字を使う及びWordの囲い文字で文字を囲む
検索条件にワイルドカード文字を使う
ここでは関数の検索条件にワイルドカード文字を使う例を書きます。
ワイルドカード文字を使用できる関数としては、SUMIF、COUNTIF、SEARCH、MATCH、HLOOKUP、VLOOKUP、SUMIFS、COUNTIFS、AVERAGEIF、AVERAGEIFS といった関数があげられます。
ただし、データベース関数でシートに検索条件を書き出すものは異なる結果を示しますので、データベース関数でのワイルドカードの使い方(検索条件の書き方) をご覧ください。
このページは「データベース関数でのワイルドカード文字の使い方」と異なる結果を返しますので、その対比用として作成しています。
ここではCOUNTIF関数を使って説明したいと思います。【Officeシリーズ 】
ワイルドカード文字の*(アスタリスク)を使うと
○* 「~で始まる」
*○ 「~で終わる」
*○* 「~を含む」
といった指定の仕方ができます。
この条件の指定の仕方を関数の検索条件に使ってみます。
ワイルドカード文字については 下記ページで説明しています。【Officeシリーズ 】
条件付きで合計する関数(SUMIF関数)の使い方
http://www.eurus.dti.ne.jp/~yoneyama/Excel/kansu/sumif.htm#wairudoka-do
セルを参照する
セルにワイルドカード文字の*(アスタリスク)や?(クエスチョンマーク)を入力してあります。そのセルを参照して数式を作成します。
○* 「~で始まる」
*○ 「~で終わる」
*○* 「~を含む」
?島 「2文字の文字列で2文字目が島」
?島? 「3文字の文字列で2文字目が島」
といった指定の仕方ができます。
E2セルにはセルに入力された条件を参照する数式 =COUNTIF($A$2:$A$8,E1) が入力されています。
下図の結果のように何ら違和感のない結果となりました。=を使った指定の仕方でも違いはない結果です。
"【Officeシリーズ 】-2021-6-11 283-1"
下図のように、データベース関数では I2セル「*島」とJ2セル「="=*島"」と入力した結果、E6セル「鹿児島」とF6セル「="=鹿児島"」と入力した結果が異なります(下図はExcel2016です。Excel2002以外のバージョン、Excel2000,2003,2007,2010,2013は同じ結果になります。)
データベース関数でのワイルドカードの使い方(検索条件の書き方) をご覧ください。
"【Officeシリーズ 】-2021-6-11 283-2"
数式内にワイルドカード文字を書く
数式の中にワイルドカード文字を使っています。
薄い緑色のセルに数式が入力してあります。数式の中には上のセルと同じワイルドカード文字を使った文字列が使用されています。
E2セルには =COUNTIF($A$2:$A$8,"島*") と入力されています。
上記のセル参照と同じ結果が得られました。
"【Officeシリーズ 】-2021-6-11 283-3"
セルに入力した文字をワイルドカードを組み合わせる
キーとなる文字はD2セルに入力してあり、ワイルドカード文字を数式で組み合わせる方法です。
E2セルには =COUNTIF($A$2:$A$8,$D$2&"*") と入力してあります。ワイルドカード文字とは & でつないでいます。
上記のセル参照と同じ結果が得られました。
"【Officeシリーズ 】-2021-6-11 283-4"
ワイルドカードを使った関数の数式例
COUNTIFとかSUMIF、SUMIFS、COUNTIFS、AVERAGEIF、AVERAGEIFSといった関数でワイルドカードを使った検索を行い計算すると、それぞれその結果はカウント、合計、平均といった値が返ってくると予想できます。
MATCH関数やSEARCH関数、VLOOKUP関数の場合はちょっと予想しにくいと思います。
ワイルドカード文字を使った検索値を入れると、下図のような結果が返されます。
MATCH関数は一致した文字が指定したセル範囲のどの位置にあるかが返されます。
VLOOKUP関数もMATCH関数と同様です。
SEARCH関数は対象の一致した位置を返します。一致しない場合は#VALUE!エラーを返します。
"【Officeシリーズ 】-2021-6-11 283-5"
囲い文字を使う
囲い文字を作成する方法には、入力した文字を囲い文字にする方法と、囲い文字を実行して文字を入力する方法とがあります。
入力した文字を囲み文字にする
文字がすでに入力してあります。囲み文字にする文字(1文字)を選択します。
[ホーム]タブのフォントグループにある[囲い文字]をクリックします。
"【Officeシリーズ 】-2021-6-11 283-6"
囲い文字 ダイアログボックスが表示されます。
スタイルで「外枠のサイズを合わせる」と「文字のサイズを合わせる」のどちらかを選択します。
囲みの「文字」には選択している文字が表示されます。
囲みで囲む図形を選択します。○、□、△、◇から選択することができます。
"【Officeシリーズ 】-2021-6-11 283-7"
「外枠のサイズを合わせる」を選択すると、文字を囲む図(外枠)に合わせて文字が小さくなります。
"【Officeシリーズ 】-2021-6-11 283-8"
「文字のサイズを合わせる」を選択すると、文字の大きさは元のままで、図(外枠)が文字の大きさに合わせられます。
"【Officeシリーズ 】-2021-6-11 283-9"
文字を後から入力する
[ホーム]タブのフォントグループにある[囲い文字]をクリックします。
"【Officeシリーズ 】-2021-6-11 283-10"
囲みの文字のインプットボックスに囲い文字にする文字を入力します。ここでは「字」と入力しました
"【Officeシリーズ 】-2021-6-11 283-11"
下図のように表示されます。
「文字のサイズを合わせる」では外枠によっては行間が広くなります。
"【Officeシリーズ 】-2021-6-11 283-12"
段落書式で行間を調整する必要が出てくるかもしれません。
下図はちょっと拡大表示していますが、行間を「固定値」「14pt」に設定しました。(フォントサイズは10.5です。)
外枠によっては上下がカットされてしまいます。
"【Officeシリーズ 】-2021-6-11 283-13"
2文字の囲い文字を作成する
囲い文字のコマンドボタンでは1文字の囲い文字しか作成できません。
囲い文字はフィールドコードで作成されていますので、フィールとコードを編集することで2文字以上の文字列の囲い文字を作成することができます。
フィールドコードの操作には以下のキーを使うと便利です。
[Alt]+[F9] 文書内のフィールドコードすべてを表示/非表示します。
[Shift]+[F9] 選択しているフィールドコードを表示/非表示します。
[Ctrl]+[F9] フィールドコードをキーボードから入力することができます。{ }が入力されます。
[F9] フィールドの値の更新。計算値や現在時刻などの更新をするときに使います。
囲い文字のフィールドコードを表示すると、下図のようになっています。
外枠(○)と文字の大きさが異なっているだけで、コードは同じです。
文字の大きさと外枠の大きさを調整して作成することができそうです。
"【Officeシリーズ 】-2021-6-11 283-14"
文字の色や外枠の色は、フィールドコード内を[フォントの色]で変更します。
"【Officeシリーズ 】-2021-6-11 283-15"
「文字」と2文字のフィールドコードを作成してみましょう。
フィールドコードを 1から作成するのは面倒なので、「文」の囲い文字を作成して編集する方法で説明します。
「字」と入力して、選択します。
[ホーム]タブの[囲い文字]をクリックして、「文字のサイズを合わせる」を選択して、囲い文字を作成します。
"【Officeシリーズ 】-2021-6-11 283-16"
囲い文字ができました。
"【Officeシリーズ 】-2021-6-11 283-17"
[Alt]+[F9]キーを押して、フィールドコードを表示します。
"【Officeシリーズ 】-2021-6-11 283-18"
フィールドコード内の「字」を「文字」に変更します。
○を選択して、[ホーム]タブの段落グループにある[拡張書式]→[文字の拡大/縮小]→[200%]を選択しました。
"【Officeシリーズ 】-2021-6-11 283-19"
○が横に200%に拡大されました。
"【Officeシリーズ 】-2021-6-11 283-20"
[Alt]+[F9]キーを押して、フィールドコードを非表示にします。
2文字の囲い文字ができました。
"【Officeシリーズ 】-2021-6-11 283-21"
3文字の囲い文字を作成する
3文字の文字を入力します。丸を選択して、[ホーム]タブの段落グループにある[拡張書式]→[文字の拡大/縮小]→[その他]を選択しました。
"【Officeシリーズ 】-2021-6-11 283-22"
フォントダイアログボックスの[詳細設定]タブが開きます。
文字幅と間隔で「倍率」に「300%」と入力します。
"【Officeシリーズ 】-2021-6-11 283-23"
フィールドコードは下図のようになります・
[Alt]+[F9]でフィールドコードを非表示にすると3文字の囲い文字が作成できました。
"【Officeシリーズ 】-2021-6-11 283-24"
独自の囲い文字を作成する
独自の囲い文字を作成したいと思います。外枠にハートを使い、中に「愛」の漢字を入れてみたいと思います。
フィールドコード内のハートを25ポイントにしました。「愛」は10.5ポイントです。
"【Officeシリーズ 】-2021-6-11 283-25"
[Alt]+[F9]でフィールドコードを非表示にすると、外枠のハートを下げる必要があります。
"【Officeシリーズ 】-2021-6-11 283-26"
[Alt]+[F9]でフィールドコードを表示して、外枠のハートを選択します。
[ホーム]タブのフォントグループのダイアログボックス起動ツールをクリックします。
"【Officeシリーズ 】-2021-6-11 283-27"
フォント ダイアログボックスが表示されます。
[詳細設定]タブを選択し、文字と間隔の位置で「下げる」を選択します。間隔を「6pt」としました。
"【Officeシリーズ 】-2021-6-11 283-28"
[Alt]+[F9]でフィールドコードを非表示にすると、下図のような囲い文字が作成できました。
"【Officeシリーズ 】-2021-6-11 283-29"
250%に拡大すると、下図のようになりました。
"【Officeシリーズ 】-2021-6-11 283-30"