ExcelマクロVBA入門 | 第49回.Like演算子とワイルドカード | Excelマクロの基礎と応用、エクセルVBAの入門・初級・初心者向け解説



最終更新日:2013-05-29

第49回.Like演算子とワイルドカード


Like演算子は、2つの文字列の比較を行います。



Like演算子

result = string Like pattern

result 必ず指定します。任意の数値変数を指定します。
string 必ず指定します。任意の文字列式を指定します。
pattern 必ず指定します。「解説」に示すパターン マッチング規則に従った任意の文字列式を指定します。


文字列式 string と文字列式 pattern が一致していると、演算結果 result は真 (True) になり、

一致していないと、演算結果 result は偽 (False) になります。

通常は、Ifステートメントで使います。

If string Like pattern Then
  真(True)の場合の処理
End If


文字列比較のための便利な機能を利用できます。

ワイルドカード、文字リスト、文字範囲などを組み合わせて使用できます。

文字列式 pattern に指定できる文字と、一致する文字を示します。


ワイルドカード

文字パターン 引数 string の中の一致する文字
? 任意の 1 文字
* 任意の数の文字
#

任意の 1 文字の数字 (0-9)

1バイト (半角) の数字だけが一致します

[charlist] 文字リスト charlist に指定した文字の中の任意の 1 文字
[!charlist] 文字リスト charlist に指定した文字以外の任意の 1 文字


"#" を除くすべての文字パターンでは、2 バイト文字 (全角文字) も 1 文字と数えて文字列比較を行います。
"#" には、1 バイト (半角) の数字だけが一致します。

特殊文字の左角かっこ ([)、疑問符 (?)、数値記号 (#)、およびアスタリスク (*)を文字列比較するには、これらの文字を角かっこで囲みます。


使用例

"aBBBa" Like "a*a" ・・・ True
"F" Like "[A-Z]" ・・・ True
"F" Like "[!A-Z]" ・・・ False
"a22a" Like "a##a" ・・・ True
"a2a" Like "a##a" ・・・ False
"BAT123khg" Like "B?T*" ・・・ True
"CAT123khg" Like "B?T*" ・・・ False


一般に言われる、正規表現は使用できません。

マクロで正規表現を扱う為には、VBScriptを使う事になります。
(これについての説明は、いずれ機会があれば)




同じテーマ「ExcelマクロVBA入門」の記事

第50回.総合練習問題6
第51回.Withステートメント
第52回.オブジェクト変数
第53回.Workbookオブジェクト
第54回.Windowsオブジェクト
第55回.Worksheetオブジェクト
第56回.Rangeオブジェクト

新着記事 ・・・新着記事一覧を見る

大量VlookupをVBAで高速に処理する方法について|ExcelマクロVBA技術解説(12月12日)
オセロを作りながらマクロVBAを学ぼう|ExcelマクロVBAサンプル集(11月26日)
ScreenUpdating=False時にエラー停止後にシートが固まったら|ExcelマクロVBA技術解説(11月21日)
データクレンジングと名寄せ|ExcelマクロVBA技術解説(10月20日)
SUMIFの間違いによるパフォーマンスの低下について|エクセル関数超技(6月17日)
条件式のいろいろな書き方:TrueとFalseの判定とは|ExcelマクロVBA技術解説(6月15日)
空白セルを正しく判定する方法2|ExcelマクロVBA技術解説(5月6日)
フルパスをディレクトリ、ファイル名、拡張子に分ける|ExcelマクロVBA技術解説(4月15日)
テキストボックスの各種イベント|Excelユーザーフォーム入門(4月9日)
フォルダ(サブフォルダも全て)削除する、Optionでファイルのみ削除|ExcelマクロVBAサンプル集(4月4日)

アクセスランキング ・・・ ランキング一覧を見る

1.最終行の取得(End,Rows.Count)|ExcelマクロVBA入門
2.RangeとCellsの使い分け方|ExcelマクロVBA入門
3.変数とデータ型(Dim)|ExcelマクロVBA入門
4.Range以外の指定方法(Cells,Rows,Columns)|ExcelマクロVBA入門
5.セルのコピー&値の貼り付け(PasteSpecial)|ExcelマクロVBA入門
6.オセロを作りながらマクロVBAを学ぼう|ExcelマクロVBAサンプル集
7.マクロって何?VBAって何?|ExcelマクロVBA入門
8.定数と型宣言文字(Const)|ExcelマクロVBA入門
9.ひらがな⇔カタカナの変換|エクセル基本操作
10.繰り返し処理(For Next)|ExcelマクロVBA入門



  • >
  • >
  • >
  • Like演算子とワイルドカード

  • このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。


    記述には細心の注意をしたつもりですが、
    間違いやご指摘がありましたら、「お問い合わせ」からお知らせいただけると幸いです。
    なお、掲載のVBAコードは自己責任で使ってください。万一データ破損等の損害が発生しても責任は負いません。

    ↑ PAGE TOP