質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%

Q&A

解決済

3回答

3539閲覧

Excelの数式で半角英数字と特定の文字が入力されているときのみ、Trueとする方法

yutkts

総合スコア20

0グッド

1クリップ

投稿2019/01/18 04:28

編集2019/01/18 04:29

Excelの数式に関する質問なのですが、
特定のセルの値が半角英数字と、指定の文字が入力されているときのみ
Trueとし、半角英数字以外と指定の文字列以外が入力されていた場合
Falseとするようにしたいです。

許可する指定の文字は以下となります。
許可文字列:「 . _ - : 」

例えば、セルの値が以下のような場合はTrueとたいです。

[True例]
teratail.com
tera_tail.com
tera-tail.com:80

また、以下のような場合はFalseとする。

[false例]
teratailtail*com
teratail().com
teratail.com (tが全角文字)

上記の実現方法についてご教授いただけると幸いです。
よろしくおねがいします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答3

0

ベストアンサー

上記は正規表現パターンを使用した方が良いと思います。

質問者様の場合は、

^[a-z0-9._\-:]+$

というパターンを適用すれば期待する処理ができると思います。

VBA での正規表現処理については、 このページ に具体的な処理が書かれているので参考になると思います。

投稿2019/01/19 09:13

yamashita_yuich

総合スコア316

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

yutkts

2019/01/22 06:58

返事が遅くなり申し訳ありません。 正規表現を使うことで判定処理をうまく設定することができました! コメントありがとうございました。
guest

0

単純にバイト数の判定では駄目ですかね?

Excel

1=LENB(A4)=LENB(A4)

投稿2019/01/18 14:51

kai_keitai

総合スコア344

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2019/01/20 05:00

誤記だと思いますが、どちらかをLENとした場合でも、許容しない半角文字を検出できないので、要件を満たしていないのでは。
yutkts

2019/01/22 07:00

バイト数判断では今回の件は消化できませんでした。。 コメントいただきありがとうございました。
guest

0

この過去質問の回答とかどうでしょう?

投稿2019/01/18 04:41

papinianus

総合スコア12705

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

yutkts

2019/01/23 04:28

こちらの回答も参考にさせていただきました。 ただ今回の件ですと、正規表現による処理が 私の中で最良でした。 コメントいただきありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問