No.2ベストアンサー
- 回答日時:
こんにちは。
maruru01です。1文字ずつループさせて、文字コードを調べることになると思います。
漢字の文字コードについては、以下のページを参考にして下さい。
http://hp.vector.co.jp/authors/VA017832/hide_chi …
http://www2.famille.ne.jp/~akio1998/l_x112.html
参考URL:http://hp.vector.co.jp/authors/VA017832/hide_chimarl/chimarl09_03.html,http://www2.famille.ne.jp/~akio1998/l_x112.html
No.5
- 回答日時:
漢字=全角文字なんでしょうか?
それとも全角英数字やひらがな、カタカナは除いた、普通~の日本語で言うところの「漢字」なんでしょうかね?
漢字=全角文字という事であれば、これでどうですか?
Dim lenBUnicode As Integer
Dim lenBFromUnicode As Integer
Dim str As String
str = "abcdeあいうえお"
lenBUnicode = LenB(str)
lenBFromUnicode = LenB(StrConv(str, vbFromUnicode))
'VBではUNICODEで文字が扱われる。
'UNICODEでは半角文字も2バイト。
'UNICODEじゃなくした場合にバイト数がUNICODEのちょうど半分になれば全部半角。
If lenBUnicode <> lenBFromUnicode * 2 Then
MsgBox "全角文字あり"
Else
MsgBox "全部半角"
End If
No.4
- 回答日時:
下記の方法で大丈夫だと思う。
Private Sub Form_Click()
Dim tmp
Dim str
Dim i
str = "aaaaaあああ"
For i = 1 To Len(str)
tmp = StrConv(Mid(str, i, 1), vbFromUnicode)
If LenB(tmp) > 1 Then
MsgBox "漢字発見"
Exit For
End If
Next
End Sub
No.3
- 回答日時:
strconv(文字型変数,vbNarrow)をつかって、一旦文字を半角に直します。
そうするとひらがなやかたかな、数字は半角文字に変換されますが漢字のコードは変換されないので、あとは一文字ずつ切り取ってループしていき Asc関数を使って文字コードをチェックした時に0~255の範囲に入っていないもの(マイナスの値が出るもの)は基本的に漢字です。
この方法だと一部の特殊記号(ロシア文字とかギリシャ文字とかも漢字として判定してしまう事もありますが、単純なチェックとしては簡単なコードだと思います。
正確にするなら、その辺りのコードで出る値を除外してしまえばいいかと。
以上です。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 政治 私の発明した「二階建て漢字」は使えるでしょうか? 3 2023/02/08 16:40
- その他(パソコン・スマホ・電化製品) スマホで検索について 3 2022/06/06 09:21
- C言語・C++・C# VisualStudioのソースコードで漢字を使いたい 4 2022/05/21 10:16
- その他(データベース) Accessのクエリで1フィールドの抽出条件設定をNullでなく全角半角含む空白のみの文字列でない文 1 2023/04/24 15:20
- 日本語 漢字の意味について 3 2022/06/15 23:43
- 日本語 漢字に詳しい方教えて下さい。 4 2023/05/03 22:14
- 書道・茶道・華道 漢字を教えて下さい。お願いします。 2 2023/05/03 22:08
- 中国語 漢文の遺徳文章の出だしからが、私の能力では半日かけても全体が分かりません。どなたか教えてください。 1 2023/02/27 13:39
- Excel(エクセル) エクセル関数の変わった使い方 3 2022/05/13 17:12
- WordPress(ワードプレス) Wordpressの記事URLを自由に決めたい 3 2022/06/02 12:05
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
文字の入力で横バー上段、中断...
-
XMLのタグ名の禁則文字
-
メッセージボックスで1025文字...
-
入力禁止文字の設定方法につい...
-
エクセルのCOUNTIFが正しくカウ...
-
全角括弧と全角読点の間隔を狭...
-
全角英数文字が嫌われる理由を...
-
エクセルでの漢字、カタカナ、...
-
文字列中の両丸括弧を取り除くV...
-
文字列の漢字の有無の検索
-
Replace関数は文字数の制限ある...
-
全角半角変換 C++/CLI
-
Excel関数「COUNTIF」で”文字”...
-
パソコンで全角、半角文字の切...
-
VBのソース検索で、コメントア...
-
テキストボックスの入力制限
-
VBScriptである文字列に半角文...
-
半角スペースを全角スペースに
-
2つ以上の連続する空白文字を除去
-
半角記号、全角記号を含む正規...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
メッセージボックスで1025文字...
-
文字の入力で横バー上段、中断...
-
Excel関数「COUNTIF」で”文字”...
-
エクセルのCOUNTIFが正しくカウ...
-
全角括弧と全角読点の間隔を狭...
-
半角記号、全角記号を含む正規...
-
特定の文字を簡単な操作で半角...
-
全角英数文字が嫌われる理由を...
-
VBAで英数字入力チェックしたい。
-
エクセルでの漢字、カタカナ、...
-
全角半角変換 C++/CLI
-
XMLのタグ名の禁則文字
-
VBScriptである文字列に半角文...
-
記号は半角と全角どちらがよい...
-
文字列中の両丸括弧を取り除くV...
-
パソコンで全角、半角文字の切...
-
HTML5の「pattern」属性で前後...
-
Replace関数は文字数の制限ある...
-
Excel2002 一桁数字だけ全角に置換
-
エスケープ文字にstr_replaceが...
おすすめ情報