わたろぐ

仕事、読書、ガジェット、グルメ、写真、旅行など雑多な備忘

【VBA】 特殊文字を扱う

VBAで特殊文字を扱おうとしたところうまく行かなかった。 例えば©という文字、VBAのエディタ画面で入力すると「?」と表示されてしまう。

Dim str as String
str = "? 株式会社〇〇" ' 変換してもコピペしても入力できない。

調べた結果、ChrWというメソッドを使う必要があるらしい。

ChrW(/* 文字コード */)

引数に文字コードを渡して文字を表す。

ちなみにコピーライト「©」を表す文字コード(Unicode)は16進数でA9。 「© 〇〇株式会社」を表す文字列を入力するなら

Dim str as String
str = ChrW(&HA9) + " 株式会社〇〇" ' &Hは16進数を表す

とすればOK。

参考:Unicode一覧 0000-0FFF | Wikipedia