MS Access Tips/Sample and VBA and Blog customize etc...

Unicodeスカラー値を文字列に変換する関数

タイトル画像

掲示板の回答用に作成した関数です。文字列をUnicodeスカラー値に変換する関数もあります。

vbaでunicodeスカラを文字列に変換したいのですが、やり方をイメージで... - Yahoo!知恵袋

難易度:

変換関数

例えば、
「U+30c6U+30b9U+30c8」を「テスト」 に変換
逆に、
「テスト」を「U+30c6U+30b9U+30c8」 に変換する関数です。

標準モジュールに下記の関数をコピーして貼り付けてください。

使用例

解説

文字列をUnicodeスカラー値に変換

AscW関数でUnicodeでの文字コードを取得できます。
この数値を16進数表記の文字列に変換するのは、Hex関数で可能です。
Right("000" & Hex(AscW(c)), 4) で桁数を4桁に固定してます。

Unicodeスカラー値を文字列に変換

Unicodeスカラー値の U+30c6 の 30c6 の部分は、16進数表示になっています。
VBAでは、16進数は &H を付けて、&H30c6 というように表記します。
"30c6" という16進数文字列は"&H"を付けると、Val関数で数値に変換できます。
その数値を ChrWに引数として渡すと文字列を取得できます。

拍手する

Leave a reply






Trackbacks

trackback URL
http://hatenachips.blog34.fc2.com/tb.php/464-90d28eee
該当の記事は見つかりませんでした。