例えば国名をwebで調べてコピペでエクセルに集計するとします。
web上には、いろいろな形式で国名が記入されているでしょうから、
JAPAN
america
China
というように、集計後に一覧化すると見栄えが悪くなると思います。
今この記事を読んでいるあなたも、このような状況に出くわしているのではないでしょうか?
エクセルにはこのような状況を一瞬で解決できる方法が備わっています。
この記事では、その方法をご紹介していきます。
具体的には、指定した文字列を
◆すべて大文字にする方法
◆すべて小文字にする方法
◆頭の文字だけ大文字にし、その他はすべて小文字にする方法
の3つをご紹介していきます。
単純にやり方だけを説明してもイメージがわかないとおもいますので、今回は以下の画像に示しているように、
B2セルに記入されている【JaPaNeSe】
という文字列を操作していこうと思います。
前提が確認できたところで、それでは具体的な処理方法の説明に移っていきましょう。
文字列すべてを大文字化:UPPER関数
まずはじめは文字列すべてを大文字にする方法についてです。
やり方:=UPPER(文字列セル)
今回の場合は=UPPER(B2)
実際のエクセル画面は以下の通りです。
(B3セルに変換後の文字列を出力します。)
これで以下のようにすべての文字が大文字化されています。
きちんとすべての文字が大文字に変わっていますね。
今回はセルに文字列が記入されている前提でこのUPPER関数を使用しましたが、
=UPPER(“JaPaNeSe”)
というように直接文字列を入力し、” で囲ってあげても機能します。
※まぁこんな使い方するくらいなら最初から表示したい形式で入力しろよって話なので使うことはないでしょうけど。
というわけでここまでが文字列すべてを大文字に変換する方法でした。
文字列すべてを小文字化:LOWER関数
次は文字列すべてを子文字にする方法についてです。
やり方:=LOWER(文字列セル)
今回の場合は=LOWER(B2)
実際のエクセル画面は以下の通りです。
(B4セルに変換後の文字列を出力します。)
これで以下のようにすべての文字が小文字化されています。
というわけでここまでが文字列すべてを小文字に変換する方法でした。
頭文字だけを大文字化:PROPER関数
最後は頭文字だけを大文字に、その他は小文字にする方法についてです。
やり方:=PROPER(文字列セル)
今回の場合は=PROPER(B2)
実際のエクセル画面は以下の通りです。
(B5セルに変換後の文字列を出力します。)
これで以下のように頭文字だけが大文字化され、その他は小文字化されています。
というわけでここまでが3つの方法を用いて文字列の大文字、小文字を変換する方法のご紹介でした。
VBAへの組み込み方法
最後に、ここまでに紹介した内容とまったく同じことをVBA上でやるにはどうすればいいのか、ということをご紹介していきます。
◆ここまでの内容を再現するVBAコード
Sub String_convert()
Dim base_moji As String
base_moji = Cells(2, 2)
Cells(3, 2) = StrConv(base_moji, vbUpperCase)
Cells(4, 2) = StrConv(base_moji, vbLowerCase)
Cells(5, 2) = StrConv(base_moji, vbProperCase)
End Sub
以下がこのVBAコードの実行結果です。
数式はなくなっていますが、先ほどと全くおなじ結果が出力されていますね。
おわりに
というわけで文字列の形式を整える際に使える
UPPER関数(すべて大文字化)
LOWER関数(すべて子文字化)
PROPER関数(頭文字だけ大文字化)
という3つの関数の使い方をご紹介しました。
知っておくだけで、面倒な再入力作業を削減できますので、ぜひこんな関数もある、ということは覚えておきましょう。
このように私のブログではエクセルスキルはもちろん、様々なプログラミングスキルを紹介しています。
・日々の残業時間を減らしたい。
・業務をもっと効率的にこなしたい。
・もっと勉強する時間を作りたい。
こんな思いを持っている人は、ぜひ他の記事も見てみてくださいね。
この記事が役に立ったという方は、ぜひ応援よろしくお願いします。
↓ 応援ボタン
それではまた!
コメント