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

【Excel VBA】A列の全角・半角文字をチェック

Excel VBAの初心者です。
仕事で必要なため、教えていただけると助かります。


【やりたいこと】
Excel VBAで、入力が完了したExcelシートのA列(A1からA10)が、
半角のみであること、または全角が入力されていないこと、を
チェックしたいです。

半角以外の文字があった場合は、メッセージを表示します。
また、半角以外のセルがあった場合は、そのセルの色を水色にします。

入力チェックの方法は、ボタンにマクロを登録して、
そのボタンを押下することで行います。

以下に、僕が試したプログラムを記します。
アドバイスをいただけると幸いです。よろしくお願いします。


Sub 入力チェック()
Dim cellValue As String
Dim strANSI As String
Dim i As Integer

For i = 0 To 10

cellValue = Cells(1, i + 1)
strANSI = StrConv(cellValue, vbFromUnicode)

If Len(cellValue) = LenB(strANSI) Then
MsgBox "セルは半角のみ"
myColor = 8
Else
MsgBox "セルの内容は全角のみ"
End If
MsgBox "セルの内容は全角と半角があり"

Next i
End Sub

A 回答 (2件)

    • good
    • 0
この回答へのお礼

kmetuさん、ご連絡が遅くなり申し訳ありません。

アドバイスいただいたURLを参考にさせて頂きました。
有難う御座います。

お礼日時:2010/04/29 12:27

できてるじゃない・・・と思ったら、なるほどw



 誤) cellValue = Cells(1, i + 1)
 正) cellValue = Cells(i + 1, 1)

あとはわかってそーだけど、elseif Lenb/Len = 2 then 半角、else 混在。
    • good
    • 1
この回答へのお礼

ap_2さん、ご連絡が遅くなり申し訳御座いません。

ap_2さんのアドバイスにより、無事解決しました。
アドバイスありがとうございます。

お礼日時:2010/04/29 12:25

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