セルに入力された値などを、半角もしくは全角に統一する場合に、
StrConv関数を利用することができます
StrConv関数は、文字列を指定された種類に変換してその値を返します。
サンプルマクロでは、セルA1からセルJ1の値を全角文字に変換しています。
Sub Sample()
Dim i As Integer
Dim J As Integer
For i = 1 To 10
For J = 1 To 10
Sheets(1).Cells(i, J) = StrConv(Sheets(1).Cells(i, J), vbWide)
Next J, i
End Sub
StrConv関数の構文は次のとおりです。
<構文> StrConv(string, conversion, LCID)
指定項目 内容
string :必ず指定します。変換する文字列式を指定します。
conversion:必ず指定します。実行する変換の種類の値の合計を指定します。
LCID :省略可能です。システムとは異なる国別情報識別子(LCID)を指定
できます。既定値はシステムが使用するLCIDです。
名前付き引数conversionには、次のいずれかの定数または値を指定します。
定数 値 内容
vbUpperCase 1 文字列を大文字に変換します。
vbLowerCase 2 文字列を小文字に変換します。
vbProperCase 3 文字列の各単語の先頭の文字を大文字に変換します。
vbWide* 4* 文字列内の半角文字(1バイト)を全角文字(2バイト)に
変換します。
vbNarrow* 8* 文字列内の全角文字(2バイト)を半角文字(1バイト)に
変換します。
vbKatakana** 16** 文字列内のひらがなをカタカナに変換します。
vbHiragana** 32 文字列内のカタカナをひらがなに変換します。
vbUnicode 64 システムの既定のコードページを使って文字列をUnicode
に変換します。
vbFromUnicode 128 文字列をUnicodeからシステムの既定のコードページに
変換します。
* 国別情報の設定が中国、韓国、および日本の場合に適用されます。
** 国別情報の設定が日本の場合のみ有効です。
通常、定数は互いに矛盾しない限り、組み合わせて指定できます。たとえば、
定数vbUpperCaseとvbWideを組み合わせることはできます。しかし、定数vbUnicode
とvbFromUnicodeは指定内容が矛盾するため、組み合わせることはできません。
また、不適切な場所で定数vbWide、vbNarrow、vbKatakana、およびvbHiragana
を指定した場合は、実行時エラーが発生します。
|