- ベストアンサー
全角データの存在判定
いつもお世話になります。 さて標記の件、データの中に全角文字が入っているかどうかの判定をしたいと思っています。 過去の質問からクエリでLen(文字列)<>LanB(文字列)を作ってみたんですが、半角文字しかないのにLanBに倍の数字が入ります。 office2000だからだと思いますが何か方法が在りませんでしょうか。 WinXP Office2000PROを使用しています。 以上、宜しくお願いいたします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
おはようございます。 >"あア"(全角、半角) →"あア" では無いでしょうか。 以下は全角2文字ですので、結果はその通りです。 Len("あア") → 2 LenB("あア") → 4 Len(StrConv("あア",64)) → 4 '→ これは vbUnicode です LenB(StrConv("あア",64)) → 8 '→ これは vbUnicode です >LenB(StrConv("あア",64)) → 8 → LenB(StrConv("あア", vbFromUnicode)) ですので → LenB(StrConv("あア",128)) → 3 になります。 再度確認してみてくださいね。
その他の回答 (1)
- pkh4989
- ベストアンサー率62% (162/260)
こんにちは。 表記の間違いだと思います。 Len(文字列)<>LanB(文字列) ↓ Len(文字列)<>LenB(StrConv(文字列, vbFromUnicode))
補足
回答ありがとうございます。 上記内容でも無理でした。 内容記述しますのでフォロー願えますでしょうか。 文字列を例えば"あア"(全角、半角)として Lenで2、LanBで3の情報がほしいです。 Len("あア") → 2 LenB("あア") → 4 Len(StrConv("あア",64)) → 4 LenB(StrConv("あア",64)) → 8 特に最後がまったく理解できません。 すみませんがよろしくお願いいたします。
お礼
できました!!! ありがとうございました。