MENU

【初心者向け】VBAで文字列の大文字・小文字を統一する方法|UCaseとLCaseの使い方を解説!

A子さん

「”Apple”と”apple”って、VBAだと違う文字列って扱われちゃうんだよね…。
比較のたびにエラーになるの、地味にツライ…」

先輩

そんな悩みを抱えるあなたにこそ知ってほしいのが、UCase / LCaseという文字列変換関数です。
大文字・小文字の違いによるバグを防ぐための基本テクニックをご紹介します。

結論:文字列比較は「大文字か小文字に統一して」から比較しよう!

目次

UCaseとLCaseとは?

関数説明
UCase指定した文字列をすべて大文字に変換UCase("apple") → "APPLE"
LCase指定した文字列をすべて小文字に変換LCase("APPLE") → "apple"

実際の使用例

ユーザー入力と値を比較したいとき

If LCase(Cells(i, 1).Value) = "apple" Then
    MsgBox "りんご発見!"
End If

→ 入力が「Apple」「APPLE」「apple」など、
どの表記でも同じと判定できるようになります。

配列内の検索でミスを減らしたいとき

Dim fruit As String
fruit = "APPLE"

If LCase(fruit) = "apple" Then
    MsgBox "一致しました"
End If

大文字小文字を気にせずに判定が可能に!

UCase / LCaseが必要な理由

ユーザーは入力時に大文字小文字を意識しない

VBAでは "Apple" ≠ "apple" → 予期せぬ不一致

条件分岐や検索で正確な一致判定をするための必須テクニック

注意点とよくある失敗

失敗例内容
変換し忘れ比較元だけLCase、比較先はそのまま…でFalse判定に
部分一致やLike演算子と併用時Like "*apple*" などでは、ケースを揃えてから使うべし
日本語は変換されないLCase(“あいうえお”) → そのまま変化なし

まとめ

UCase → 大文字、LCase → 小文字に変換する関数

文字列の比較・検索時は必ずどちらかで統一

ユーザー入力やデータの揺れを吸収して安定した処理に!

関連記事リンク

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

コメント

コメントする

目次