プロが教える店舗&オフィスのセキュリティ対策術

Windows7+Access2010のVBAで「JIS2004」の異体字168文字を記述していましたところ、不思議な事が起こりましたので質問です。

A.「屢」だけ「?」となり、記述できない。
  それ以外の異体字は正常に記述できる。
  現在は ChrW(&H5C62) と記述して逃げている。

A-1.なぜ記述できないのか、その原因は?
    バグなのか、環境変更、あるいはアップデートで回避できるか?
A-2.Windows7+Access2010で記述できるようにする方法はあるのか?
    無いのなら、Windows8+Access2013などなら、問題ないのか?

B.漢字をunicodeで指定するとした場合、異体字などに含まれる「叱(U+20B9F)」などは5桁コードだが、5桁以上のunicodeをVBAで表現したい場合はどのように処理するのか?
  ChrWやAscWでは正しく処理できない。

ネット検索もしてみましたが、なかなかヒットせず、時間ばかりかかっています。
どなたかご存知の方がいらっしゃいましたらよろしくお願いします。

A 回答 (1件)

A.VBE(エディタ)は、Shift-JISみたいです


OfficeやVBAの文字列型はUnicodeなので、処理は可能です。
ただ、エディタがsjisなので、補助漢字はコード上に書くことができません。なぜかMsgBoxもsjisです。

 → 仕様かと。ChrWしかないと思います。
 参考)http://codezine.jp/article/detail/1718

B.VBAはサロゲートペア(4byte文字)未対応です
2byte*2として扱われます。

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

お返事遅くなりました。

とても参考になりました。

教えていただいた内容を元にさらに調査したいと思います。
ありがとうございました。

お礼日時:2013/09/30 17:24

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

関連するカテゴリからQ&Aを探す