- ベストアンサー
EXCELの小文字を大文字に
初歩的な質問ですけど Excelで現在既にある英数の小文字を大文字に変えたいのですが、どうすればいいのでしょうか?関数?VBA?どちらでもいいのでお教え下さい。
- みんなの回答 (7)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
複数セルの場合はこんな感じです。 下のサンプルの場合、A1:C2範囲のセルの範囲を大文字に変換します。 For iCnt = 1 To 2 For jCnt = 1 To 3 は縦の行に対して、1セル目~2セル目 横の列に対して、1セル目~3セル目までを対象とする と言う意味です。 選択したい範囲に合わせてここは変更してみてください。 ~ Sub Main() Dim iCnt As Long Dim jCnt As Long '縦 For iCnt = 1 To 2 '横 For jCnt = 1 To 3 Cells(iCnt, jCnt).Value = UCase(Cells(iCnt, jCnt).Value) Next jCnt Next iCnt End Sub
その他の回答 (6)
> 同一のセル内での変換は無理なのでしょうか? 同一のセル内での変換も出来ます。 #前回は分かりやすく説明するために、別セルに書き出していました。 A1セルに入っている値に対して 全て大文字に変更した値をA1セルに表示する場合には Sub Main() Range("A1").Value = UCase(Range("A1").Value) End Sub とします。 > あと・・・・複数のセルを選択できます? 複数セルも選択できますが、こちらは分かりやすく説明するのが 難しい。(A1を読み替えたりしないといけないので)
A1の小文字を大文字に変える関数。 =UPPER(A1) 先頭の1文字のみ変えるときは、 =PROPER(A1) です。
> 基本判ってないもので・・・ すいません。ちょっと打合せが長引いてしまいました。 MsgBox UCase("AAAbbCCCdddEEE") の例は、UCaseの使い方を示しただけのものでした。 例えば、 A1セルに入っている値に対して 全て大文字に変更した値をB1セルに表示する場合には Sub Main() Range("B1").Value = UCase(Range("A1").Value) End Sub とします。 同じように、 A2セルに入っている値に対して 全て大文字に変更した値をB2セルに表示する場合には Range("B1").Value = UCase(Range("A1").Value) を Range("B2").Value = UCase(Range("A2").Value) に変更します。 お験しを・・・。
お礼
回答ありがとうございます。 なるほどです。できました。 同一のセル内での変換は無理なのでしょうか? あと・・・・複数のセルを選択できます? ご面倒な事で申し訳ありません。
VBAの標準関数で、UCaseという関数があります。 Sub Main() MsgBox UCase("AAAbbCCCdddEEE") End Sub 小文字は大文字に、大文字は大文字のままです。 上記コードでお試しを・・・。
お礼
VBAで試すとメッセージBOXにAAABBCCCDDDEEEと表示されるだけなのですが・・・基本判ってないもので・・・
- sake-of
- ベストアンサー率0% (0/1)
対象セル(列や行でも可)を選んで『ctrl+H』で置換を実施したらどうでしょう? 検索する文字列を⇒ a 置換後の文字列を⇒ A にしてみては?
お礼
そんな簡単な方法があったのですね。 ありがとうございます。
- mu2011
- ベストアンサー率38% (1910/4994)
次の方法は如何でしょうか。 別セルの=JIS(対象セル)として、そのセルをコピー後に形式を選択して貼り付けの「値」で貼り付ける。
補足
早速の回答ありがとうございます。 >別セルの=JIS(対象セル) すみません。どうゆう意味でしょうか?
お礼
回答ありがとうございます。 関数は、こうして使うんですね。 なるほどです。