Option Compare ステートメントを使う場合は、モジュール内のどのプロシージャよりも前に記述する必要があります。 |
Option Compare ステートメントは、モジュール内での文字列の比較方法 (Binary モード、Text モード、または Database
モード) を指定するものです。Option Compare ステートメントが記述されていないモジュールでは、既定の文字列比較方法である Binary モードが使われます。 |
Binary モード
では、文字列比較の並べ替え順序は、バイナリ文字コードのコード順によって行われます。Microsoft WIndows 版 Visual Basicでは
、文字コードは Unicode で表現されるので、結果は Unicode のコード順によって決まります。Binary モードでの並べ替えの例を次に示します。(ただし、バージョン4.0
以前の Windows 16bit 版 Visual Basic、または Macintosh 版 Visual Basic では、文字コードはシフト
JISで表現されていたため、結果が異なる場合があります。) |
* < "a" < "z" < "あ" < "ん"
< "ア" < "ン" < "亜" < "*"
< "A" < "ア" < "ン" |
Text モード
では、文字列比較は、オペレーティング システムの国別情報の設定で決まります。日本語/日本の場合は、50 音順で、大文字と小文字、文字幅、カタカナとひらがなを区別しない並べ替え順になります。Text
モードでの並べ替えの例を次に示します。 |
(*=*) < (0=0) < (9=9) < (A=a=A=a) < (B=b=B=b) < (ア=ア=あ)
< (ン=ン=ん) < 亜 |
Database モードは、Microsoft Access でのみ使用できます。このモードの文字列比較の並べ替え順序は、データベースの文字列比較に適用される国別の
ID によって決まります。 |