LCase関数/UCase関数
LCase関数 は アルファベットの大文字を小文字に変換 し、UCase関数 は アルファベットの小文字を大文字に変換 しますよ~。簡単なマクロで確認してみましょ~。
Sub LargeToSmall()
Dim myword1 As String
Dim myword2 As String
myword1 = "KOBATO"
myword2 = LCase(myword1)
Debug.Print myword2
End Sub
'小文字から大文字に変換
Sub SmallToLarge()
Dim myword1 As String
Dim myword2 As String
myword1 = "kobato"
myword2 = UCase(myword1)
Debug.Print myword2
End Sub
LargeToSmallマクロを実行すると、myword1 という変数に入っている KOBATO という大文字を小文字に変えて kobato と表示されますよ。SmallToLarge はその逆に、myword1 という変数に入っている kobato という小文字を大文字に変換して KOBATO と表示されます。
選択したセル範囲のマクロを全て大文字に変えます
LCase関数と UCase関数は引数にセルを指定することもできますが、指定できるのはひとつのセルだけです。セル範囲を指定することはできません。そこで、選択したセルに入力されているアルファベットを全て大文字に変えるには、次のようなマクロを書きます。
Sub LargeWord()
Dim myrange As Range
For Each myrange In Selection
myrange.Value = UCase(myrange)
Next
End Sub
オブジェクト型変数を使っているところがポイントね~。
変数 myrange にはセルがそのまま入ります。
myrange.Value = UCase(myrange)
Next
という記述は、選択した範囲内の1つ1つのセルを順に変数 myrange に入れて大文字に変えるという処理を行なわせるものです。For...Each は本当に便利ね~。まあとにかく、下の図のように大文字と小文字の入り混じったデータをまとめて選択してマクロを実行してみてくださいな~。
こんなふうに全部大文字に変わりますよ~。
めでたし、めでたしね~。
それではまた次回お会いしましょ~。 ≫ VBA の技術