StrConv関数を使用して文字列を変換する方法
VBAのStrConv関数は、文字列の変換に使用されます。この関数は、指定された変換タイプに基づいて、文字列の大文字や小文字、半角と全角の変換、およびカタカナとひらがなの変換を行うことができます。
StrConv関数:文字列の変換(構文 StrConv(string,conversion))
⇒string:変換する文字列/conversion:変換の種類を指定
Cell(2,1) = StrConv(Cells(2, 1), vbUpperCase)
<変換の種類>
- vbUpperCase:文字列を大文字に変換
*UCase(文字列):アルファベットの小文字を大文字に変換⇒例)UCase(Cell(2,1)) - vbProperCase:文字列の各単語の先頭の文字を大文字に変換
- vbLowerCase:文字列を小文字に変換
*LCase(string):アルファベットの大文字を小文字に変換 - vbWide:文字列内の半角文字を全角文字に変換
- vbNarrow:文字列内の全角文字を半角文字に変換
- vbKatakana:文字列内のひらがなをカタカナに変換
- vbHiragana:文字列内のカタカナをひらがなに変換
- vbUnicode:ANSI文字列をUnicode文字列に変換
- vbFromUnicode:Unicode文字列をANSI文字列に変換
注意点として、StrConv関数は元の文字列を変更するのではなく、変換後の新しい文字列を返すことに注意してください。また、StrConv関数で変換される文字は、英数字、および一部の記号に限定されます。それ以外の文字は変換されず、そのままの状態で返されます。
全角・半角の変換
Sub 半角、全角変換()
Dim LastRow1 As Long
LastRow1 = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row
For i = 1 To LastRow1
Cells(i, 1) = StrConv(Cells(i, 1), vbWide) '全角へ変換
'Cells(i, 1) = StrConv(Cells(i, 1), vbNarrow) '半角へ変換
Next i
MsgBox "完了"
End Sub
英数字は半角へ
Sub 英数字は半角へ()
Dim rng As Range
For Each rng In Range("A1", Range("A" & Rows.Count).End(xlUp))
rng.Value = StrConv(rng.Value, vbNarrow + vbUpperCase)
Next
MsgBox "完了"
End Sub
コメント