関数・メソッド

アルファベットを大文字→小文字(小文字→大文字)に変換する【LCase関数】【UCase関数】【ExcelVBA】

構文

LCase(String) As Variant

UCase(String) As Variant

String・・・LCaseの場合、小文字にしたい文字列
・・・UCaseの場合、大文字にしたい文字列
戻り値 ・・・Variant(内部ではString型)
変数や文字列のアルファベットを大文字→小文字(LCase)、小文字→大文字(UCase)にします。

LCase関数、UCase関数のサンプルコード

Public Sub test_LCase_UCase()

    '半角文字の場合
    '■ExcelVBA→excelvba
    MsgBox LCase("ExcelVBA")

    '■ExcelVBA→EXCELVBA
    MsgBox UCase("ExcelVBA")

    '全角文字の場合
    '■ExcelVBA→excelvba
    MsgBox LCase("ExcelVBA")

    '■ExcelVBA→EXCELVBA
    MsgBox UCase("ExcelVBA")

    'アルファベット以外(影響を受けない)
    '■あいうえおアイウエオ123123→あいうえおアイウエオ123123
    MsgBox UCase("あいうえおアイウエオ123123")
    
    'アルファベット以外と混在(英字のみ変換する)
    '■Excelあ12→excelあ12
    MsgBox UCase("Excelあ12")

End Sub


先頭の文字だけ大文字にしたい

LCase関数、UCace関数では大文字、小文字に全て変換します。
先頭だけ大文字にする場合は、WorkSheet関数のProperメソッド、もしくはStrConv関数で取得します。

Properメソッドは下記がサンプルです。

Public Sub test_LCase_UCase()

    '先頭の文字だけを大文字にする場合(半角文字)
    '■excelVBA→Excelvba
    MsgBox Application.WorksheetFunction.Proper("excelVBA")

    '先頭の文字だけを大文字にする場合(全角文字)
    '■excelVBA→Excelvba
    MsgBox Application.WorksheetFunction.Proper("excelVBA")

End Sub

StrConv関数の場合は下記記事を参考にしてください。
文字列を指定文字種に変更する【StrConv関数】【ExcelVBA】

関連記事

全てのシートの「英数字は半角」「カタカナは全角」に変換する処理をパーツ化する【エクセルマクロ】
全てのシートの「半角カタカナ」を「全角カタカナ」に変換する処理をパーツ化する【エクセルマクロ】
全てのシートの「全角カタカナ」を「半角カタカナ」に変換する処理をパーツ化する【エクセルマクロ】

コメント

タイトルとURLをコピーしました