![](https://excel-vba.work/wp-content/themes/cocoon-master/images/b-woman.png)
正規表現を使用して
・携帯の電話番号をチェックする方法
を記載します!
![](https://excel-vba.work/wp-content/themes/cocoon-master/images/b-woman.png)
ここでは
・正しい携帯の電話番号(ハイフンあり)かどうか
をチェックします!
VBAコード
ここでは例として、
・シート「sample」のセル「C3」の携帯の電話番号が正しいかどうかをチェック
します。
※例として不正な携帯の電話番号を設定しています。
![チェックする電話番号(不正)](https://excel-vba.work/wp-content/uploads/2020/12/vba_phonenumber_001.png)
Option Explicit
Sub sample()
Dim objReg As Object
Set objReg = CreateObject("VBScript.Regexp")
'チェック内容(=パターン)を指定
objReg.Pattern = "^0[789]0-\d{4}-\d{4}$"
'携帯の電話番号をチェック
If objReg.Test(Worksheets("sample").range("C3")) = False Then
MsgBox ("不正な携帯の電話番号です。")
End If
'後片づけ
Set objReg = Nothing
End Sub
チェック内容(=パターン)は以下です
パターン | 内容 |
---|---|
^ | 直後の文字(ここでは数字の0)が先頭 |
0 | 数字の0 |
[789] | 数字の7 or 8 or 9 |
– | -(ハイフン) |
\d{4} | 数字4桁 |
– | -(ハイフン) |
\d{4} | 数字4桁 |
$ | 直前の文字(ここでは数字4桁)が末尾 |
実行結果
携帯の電話番号が正しく入力されているかチェックできました。
![実行結果](https://excel-vba.work/wp-content/uploads/2020/12/vba_phonenumber_002.png)
参考①
郵便番号が正しく入力されているかチェックする方法は、以下の記事をご確認ください。
参考②
正規表現の詳細は、公式サイトをご確認ください。