プロが教えるわが家の防犯対策術!

セルの内容に半角数字が1文字でも入っていればTRUE,なければFALSEを返すような関数はありますか? ない場合,どうすれば実現できるでしょうか?
(例)
1丁目2-3 …TRUE
1丁目2-3 …TRUE ("1"が半角なので)
1丁目2-3 …TRUE ("3"が半角なので)
1丁目2-3 …FALSE (数字はすべて全角なので)

A 回答 (6件)

=IF(LENB(A1)-LEN(A1)*2=0,FALSE,TRUE)

    • good
    • 0

A1に文字があるとして


=IF(SUMPRODUCT((CODE(MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1))<58)*1),TRUE,FALSE)
※半角の!"#$%&'()*+-./0123456789(キャラクターコード<58)がTRUEの対象になります。
    • good
    • 0

単独の関数はありませんが、A1セルに文字列があるとき以下の式で


>半角数字が1文字でも入っていればTRUE,なければFALSEを返す
ことができます。
 =MIN(FIND({0,1,2,3,4,5,6,7,8,9},A1&"0123456789"))<=LEN(A1)

IF文と組み合わせて
 =IF(MIN(FIND({0,1,2,3,4,5,6,7,8,9},A1&"0123456789"))<=LEN(A1),"半角数字有り","半角数字なし")
のように使ってください
    • good
    • 1

=COUNT(FIND({"0";"1";"2";"3";"4";"5";"6";"7";"8";"9"},A1))>0


但し、配列を使っているので、セルの確定は
Ctrl+Shift+Enterで確定します。
    • good
    • 0

半角カナ・英字がないという前提を置ければ


=IF(A1<>JIS(A1),"半角あり","")
と簡単になる。
多分実用上は使えるのでは。
横浜市1-2半角あり
横浜市1-3a半角あり
横浜市ヒガシ半角あり
横浜市a半角あり
横浜市港北区1-3
横浜市港北区1-4半角あり
    • good
    • 0

こんばんは。



こんな感じもありかな?

=COUNT(INDEX(FIND(ROW($A$1:$A$10)-1,A1),,))>0
    • good
    • 1
この回答へのお礼

まとめてしまってすみませんが,この場を借りて皆様にお礼申し上げます.ありがとうございました.
半角文字の有無でしたらANo.1やANo.5の方法もよさそうですね.ANo.6は範囲内のセル(例示ではA1~A10の10個)を一気にチェックするのでしょうか.私には難しくて理解できませんでした.思いのほか多数の回答を頂きましたので,これを機会に関数についてもう少し勉強したいと思います.
質問内容に最も合致したものにポイントを差し上げたつもりですが,理解不足で判断に誤りがあるかもしれません.ご了承ください.
皆様のおかげで解決できましたことに感謝いたします.

お礼日時:2008/01/06 06:48

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています