AscW関数:文字のUnicodeコードポイントを取得する
AscW 関数は Excel VBA で用意されている関数の一つで、引数に指定した文字の Unicode コードポイントを取得することができます。ここでは Excel VBA における AscW 関数の使い方について解説します。
(Last modified: )
AscW関数の定義と使い方
AscW
関数は引数に指定した文字の Unicode コードポイントを返します。
Unicode
コードポイントとは、 Unicode
で登録されているすべての文字に割り当てられている番号(符号位置)です。 Unicode
の文字をファイルに保存する場合などには、このコードポイントをそのまま使用するのではなく、 UTF-8
や UTF-16
などの符号化方式を使って文字コードに変換されたものを使用します。
引数に指定する文字列は複数の文字列を指定することもできますが、引数に指定した文字列の先頭の文字の Unicode コードポイントを返します。
※ AscW
関数とは逆に、文字の Unicode コードポイントから文字を取得するには ChrW
関数を使います。詳しくは「ChrW関数:文字のUnicodeコードポイントから文字を取得する」を参照されてください。
次の例を見てください。
Debug.Print AscW("東") '26481 Debug.Print AscW("東京都") '26481
AscW
関数は引数の文字列の 1 文字目の Unicode コードポイントだけを返すので、どちらも 26481 とイミディエイトウィンドウに出力されます。
それでは簡単なサンプルを作成して試してみます。
Option Explicit Sub AscW関数() Range("C3").Value = AscW(Range("B3").Value) Range("C4").Value = AscW(Range("B4").Value) Range("C5").Value = AscW(Range("B5").Value) Range("D3").Value = "&H" & Hex(AscW(Range("B3").Value)) Range("D4").Value = "&H" & Hex(AscW(Range("B4").Value)) Range("D5").Value = "&H" & Hex(AscW(Range("B5").Value)) End Sub
このプログラムを実行すると AscW
関数の引数に B3 セルから B5 セルに入力されている値を 指定したときの戻り値取得します。そして取得した戻り値を C3 セルから C5 セルにそれぞれ代入します。また同じ値に対する AscW
関数の戻り値を Hex
関数を使って 16 進数に変換した値を D3 セルから D6 セルに代入します。
※ Hex
関数の使い方については「Hex関数:数値を16進数に変換した値を取得する」を参照されてください。
-- --
Excel VBA における AscW 関数の使い方について解説しました。
( Written by Tatsuo Ikura )
著者 / TATSUO IKURA
これから IT 関連の知識を学ばれる方を対象に、色々な言語でのプログラミング方法や関連する技術、開発環境構築などに関する解説サイトを運営しています。