概要
Asc
関数は、指定された文字のASCIIコード(数値)を返すExcel VBAの関数です。この関数は、文字列の中から特定の文字を数値に変換して処理する際に使用されます。たとえば、アルファベットの並び順を比較する場合などに便利です。
構文
Asc(文字)
パラメータ
- 文字
変換対象の1文字を指定します。文字列の最初の文字のみが評価され、残りは無視されます。
戻り値
指定された文字のASCIIコードを数値で返します。例えば、“A”の場合は65、“a”の場合は97が返されます。
説明
Asc
関数は、与えられた文字のASCIIコードを取得するために使用されます。これは文字の並び順や、特定の文字が他の文字よりも大きいか小さいかを判定するのに役立ちます。大文字と小文字は異なるコードを持つため、比較する際に注意が必要です。
-
大文字・小文字の違い
例えば、“A”のASCIIコードは65ですが、“a”のASCIIコードは97です。この違いを利用して、大文字と小文字の違いを判定できます。 -
数値と文字の比較
Asc
関数を使用すると、文字を数値として扱うことができるため、文字列のソートやフィルタリングに役立ちます。
使用例
基本的な使用例 - 文字のASCIIコードを取得する
Sub SampleAsc()
Dim code As Integer
code = Asc("A")
MsgBox "AのASCIIコードは: " & code ' 結果: 65
End Sub
文字列の最初の文字のコードを取得する
Sub AscFirstCharacter()
Dim str As String
Dim code As Integer
str = "Hello"
' "H"のASCIIコードを取得
code = Asc(str)
MsgBox "HのASCIIコードは: " & code ' 結果: 72
End Sub
大文字・小文字のコードを比較する
Sub CompareCase()
Dim upperCode As Integer
Dim lowerCode As Integer
upperCode = Asc("A")
lowerCode = Asc("a")
If upperCode < lowerCode Then
MsgBox "大文字Aは小文字aよりも小さいコードを持ちます。" ' 結果: 65 < 97
End If
End Sub
備考
-
数値以外の文字について
Asc
関数は、制御文字や特殊文字のASCIIコードも返すことができます。 -
複数文字の処理
Asc
関数は、文字列の最初の文字だけを評価します。複数の文字を順に評価したい場合は、ループを使用して1文字ずつ処理します。 -
日本語や特殊文字への対応
Asc
関数は標準のASCIIコードに基づくため、全角文字や日本語文字には正確に対応しません。この場合、AscW
関数を使用してUnicodeコードポイントを取得することが推奨されます。