A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
## VBAで電話番号チェックを行う正規表現
以下のVBAコードは、ご指定の正規表現 `/^[00][0-90-9]{1,4}[\-ー][0-90-9]{1,4}[\-ー][0-90-9]{4}$/` と同等のチェックを行うものです。
```vba
Function CheckTelNo(strTelNo As String) As Boolean
' 正規表現パターン
Const Pattern As String = "^[00][0-90-9]{1,4}[\-ー][0-90-9]{1,4}[\-ー][0-90-9]{4}$"
' 正規表現オブジェクトを作成
Dim re As Object
Set re = CreateObject("VBScript.RegExp")
' パターンを設定
re.Pattern = Pattern
' チェック実行
CheckTelNo = re.Test(strTelNo)
End Function
```
**使い方**
1. 上記のコードをモジュールに貼り付けます。
2. チェックしたい電話番号を `strTelNo` 変数に代入します。
3. `CheckTelNo` 関数を呼び出し、結果を判定します。
**例**
```vba
Dim strTelNo As String
Dim bValid As Boolean
strTelNo = "03-1234-5678"
bValid = CheckTelNo(strTelNo)
If bValid Then
MsgBox "有効な電話番号です。"
Else
MsgBox "無効な電話番号です。"
End If
```
**補足**
* このコードは、半角数字と全角数字の両方を含む電話番号を対象としています。
* ハイフンと中黒はいずれも許可されます。
* 市外局番は1桁から4桁、市内局番は1桁から4桁、局番末尾は4桁であることを確認します。
* その他の形式の電話番号をチェックしたい場合は、正規表現パターンを変更する必要があります。
**参考情報**
* [VBA正規表現][](https://www.youtube.com/watch?v=kz7bH6bnWOs)
* [Excel VBA 正規表現を活用したデータチェック② - プログラム ノート][https://www.zabbix.com/documentation/current/ua/ …](https://www.zabbix.com/documentation/current/ua/ …
* [VBA応用(正規表現の利用について)][https://stackoverflow.com/questions/72238822/env …](https://stackoverflow.com/questions/72238822/env …
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) VBA初心者です。電話番号の数字の前に0を表示させたいです。 2 2022/12/14 03:58
- LINE povoの電話番号で、LINEを新規で登録しようとすると、不正な電話番号ですと、出て新規にできません 3 2023/11/10 20:20
- その他(IT・Webサービス) yahooIDが新規に作れない 4 2024/03/17 15:25
- Excel(エクセル) エクセルのVBAで上の表の最下行を求める 4 2022/09/14 15:22
- 固定電話・IP電話・FAX 代表組について 3 2024/04/24 11:42
- Yahoo!メール Yahoo! JAPAN IDを新規取得できない、この携帯電話番号は利用できませんと表示される 3 2024/02/02 13:34
- Yahoo!メール YahooIDをパスワード形式にしただけなのに、利用規約違反とされて電話番号が使えなくなりました 1 2023/03/15 20:44
- Visual Basic(VBA) Excle VBA Findメソッドについて 3 2022/07/15 13:56
- Yahoo!メール YahooIDをパスワード形式にしただけなのに、利用規約違反とされて電話番号が使えなくなりました 3 2023/03/25 04:08
- LINE 電話番号を変更して、LINEのアカウントも番号変更したら、昔の電話番号で新しく電話番号を取得した第三 2 2024/02/08 08:17
このQ&Aを見た人はこんなQ&Aも見ています
-
プロが教えるわが家の防犯対策術!
ホームセキュリティのプロが、家庭の防犯対策を真剣に考える 2組のご夫婦へ実際の防犯対策術をご紹介!どうすれば家と家族を守れるのかを教えます!
-
mallocについて
C言語・C++・C#
-
VBA レジストリの値の読み方について教えてください
Visual Basic(VBA)
-
VBAの計算で@が出てしまう件
Visual Basic(VBA)
-
-
4
テキストファイルのファイル名を抽出してBAT処理する方法はありますか。
その他(プログラミング・Web制作)
-
5
VBA初心者 Ctrl+での操作、ボタンに登録での操作
Visual Basic(VBA)
-
6
プログラミング
その他(プログラミング・Web制作)
-
7
VBAでパワーシェルを実行したいのですが、なかなかうまく出来ず、有識者の知識をお借りさせてください。
その他(プログラミング・Web制作)
-
8
応用情報技術者試験の令和元年秋、午後のプログラムの問題がわからないです。
C言語・C++・C#
-
9
goo は、放置?
HTML・CSS
-
10
ものづくりに向いているプログラミング言語ってなんですか?家電にもプログラミングが使われてるとか
その他(プログラミング・Web制作)
-
11
double型が正常に認識されていない恐れ
C言語・C++・C#
-
12
エクセルのマクロについて教えてください。
Visual Basic(VBA)
-
13
コードを書いて下さい( ; ; )写真有り
HTML・CSS
-
14
楽しくて最高のプログラミング言語を作りたいのですが、そもそもプログラミング言語を作る意味なんてないと
その他(プログラミング・Web制作)
-
15
Excel-VBAのmsgBox()の不思議
Visual Basic(VBA)
-
16
プログラミング ソースコード
その他(プログラミング・Web制作)
-
17
C言語 配列と関数の練習問題
C言語・C++・C#
-
18
VBA 複数条件の分岐処理の上手な方法
Visual Basic(VBA)
-
19
プログラマーと学歴の関係性について
その他(プログラミング・Web制作)
-
20
Vba SelStart、SelLen教えてください教えてください
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
「~頂けますようお願いします...
-
この女優さんの名前分かる方お...
-
お願いされたら、好きじゃなく...
-
「以上、よろしくお願い致しま...
-
「指示に従ってください」「迎...
-
明王と明神とは何らかの関係が...
-
ドアノブを付け替えたいのです...
-
「貸してください」という依頼...
-
京都弁で『はじめまして』と『...
-
彼女がお泊まりですぐに拗ねます…
-
VBA 電話番号の正規表現について
-
2ヶ月って何日くらいでしたっけ...
-
小数点第一位とは・・・
-
20mシャトルランって100回走る...
-
氷晶石の化学式を理解もしくは...
-
なぜみなさん掲示板でメル友、...
-
うちわ の数え方 うちわ は ど...
-
57kgの5パーセントってなんkgで...
-
一橋大学過去問 整数 素数 かな...
-
ユニテク Visole対応HDDありま...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
「~頂けますようお願いします...
-
「貸してください」という依頼...
-
「以上、よろしくお願い致しま...
-
「指示に従ってください」「迎...
-
20mシャトルランって100回走る...
-
L判 と 2L判 は 何cm×何cm
-
ご相談お願いいたしますは二重...
-
お願いされたら、好きじゃなく...
-
小数点第一位とは・・・
-
ご指導賜りますようお願い申し...
-
2ヶ月って何日くらいでしたっけ...
-
高麗川駅に電話したいのですが...
-
wppxファイルが開けないのです...
-
57kgの5パーセントってなんkgで...
-
言葉使いについて 「ご着席お願...
-
すごい簡単な質問ですが。
-
彼女がお泊まりですぐに拗ねます…
-
ご不幸のあった方へのお願いの...
-
リストボックスの特定行の背景色
-
もしもスマホガラスフィルムをd...
おすすめ情報