MW211 EXIT

devlog
ExcelVBA/英字を含むかの判定
2012年10月12日
「Like」を使う。
┌──────────────────────────────────────┐
│If Selection.Cells.Value Like "*[A-Za-z]*" Then                             │
│    MsgBox "英字を含む"                                                     │
│End If                                                                      │
└──────────────────────────────────────┘

反対の場合は、こう。
┌──────────────────────────────────────┐
│If Not Selection.Cells.Value Like "*[A-Za-z]*" Then                         │
│    MsgBox "英字を含まない"                                                 │
│End If                                                                      │
└──────────────────────────────────────┘
「If 調査対象 Not Like」ではなく「If Not 調査対象 Like」なので注意。

なお、単純に特定の文字(例えば「A」)を含むかの判定は「InStr()」を使う。
┌──────────────────────────────────────┐
│If InStr(Selection.Cells.Value, "A") > 0 Then                               │
│    MsgBox "Aを含む"                                                        │
│End If                                                                      │
└──────────────────────────────────────┘

反対の場合は、以下のいずれか。
┌──────────────────────────────────────┐
│If InStr(Selection.Cells.Value, "A") = 0 Then                               │
│    MsgBox "Aを含まない"                                                    │
│End If                                                                      │
├──────────────────────────────────────┤
│If Not InStr(Selection.Cells.Value, "A") > 0 Then                           │
│    MsgBox "Aを含まない"                                                    │
│End If                                                                      │
└──────────────────────────────────────┘
分類:ExcelVBA