Excelのセルの最初の文字を大文字にする方法


2

最近、小さなケースで満たされたセルでExcelに出会いましたが、Excelの各単語を大文字にする簡単な方法やマクロはありますか?

たとえば、以下の画像を検討してください。

変換前

変換後、次のようになります。

変換後

私はすべてのセルを大文字にする必要があります[すべてのセル]大文字で最初の文字をExcelで?それを達成する簡単な方法は?


1
「適切な」機能は、あなたが望むことをすることができます。たとえば=proper(H1)、ヘルパーセルに配置すると、Upload File With Irregular Formatそこに表示されます。
K. Rmth

セルの最初の文字だけを大文字にするか、すべてのセンテンスをタイトルケースにするか。en.wikipedia.org/wiki/Letter_case
デイブ

回答:


2

I need to capitalize every cell in excel with first letter as capital?any easy way to accomplish it?

はい、このマクロを使用します。最初にファイルのバックアップを取ることを忘れないでください!

Sub uppercase()

For Each cell In Application.ActiveSheet.UsedRange
    If (cell.Value <> "") Then
         cell.Value = UCase(cell.Value) ' this will make the entire cell upper case
    End If
Next

End Sub

使用する各セルの最初の文字を大文字にするには

cell.Value = UCase(Left(cell.Value, 1)) & Right(cell.Value, Len(cell.Value) - 1)               'This will make the first word in the cell upper case

タイトルケースにするには、次を使用します

Sub titleCase()

For Each cell In Application.ActiveSheet.UsedRange
    If (cell.Value <> "") Then
         cell.Value = TitleCase(cell.Value) ' this will make the entire cell upper case
    End If
Next

End Sub


Function TitleCase(s) As String
a = Split(s, " ")

For i = 0 To UBound(a)
    If (Trim(a(i)) <> "") Then
      TitleCase = TitleCase & UCase(Left(a(i), 1)) & Right(a(i), Len(a(i)) - 1) & " "
    End If
Next
TitleCase = Trim(TitleCase)
End Function

MS OfficeにVBAを追加するにはどうすればよいですか?


セルに複数の単語が含まれている場合はどうなりますか?
ゲイリーの学生

1
@ Gary'sStudent、これがOPが望んでいるものかどうかわかりません。OPは、タイトルケースにそれを要求しませんでした。現在のところ、それが変換されますmy wordsMy wordsなるほど、OPが望んでいるものを完全に明確ではありません...
デイブ

私は質問を更新し、Uに戻っ友人取得してみましょう@Dave
Vignesh4303 -ブルーベリー

セル全体を大文字にする例で投稿を更新@ BlueBerry-vignesh4303
デイブ

更新された質問の友人
ブルーベリー- Vignesh4303

6

ケースを変更するためにVBAを使用する必要はありません。他の回答で示されているように、これを行うVBA関数は確かにありますが、VBAで既に何かを書いているのでなければ、これはやり過ぎです。

次の式は、ケースを変換します。

=UPPER(A1)すべての文字を大文字に
=LOWER(A1)変換します。すべての文字を小文字に
=PROPER(A1)変換します。各単語の最初の文字を大文字に、他のすべての文字を小文字に変換します
(「単語」は文字の連続文字列です。

結果の例を次に示します。

入力:     Aaa bbb-ccc/ddd=eee9fff"ggg\hhh{iii(jjj
上部:   AAA BBB-CCC/DDD=EEE9FFF"GGG\HHH{III(JJJ
下部:   aaa bbb-ccc/ddd=eee9fff"ggg\hhh{iii(jjj
適切:Aaa Bbb-Ccc/Ddd=Eee9Fff"Ggg\Hhh{Iii(Jjj

セルの最初の文字のみを大文字にしたい場合は、UPPER他のいくつかの関数と組み合わせてください:
=UPPER(LEFT(A1)) & MID(A1,2,LEN(A1))


申し訳ありませんが、これはどのように機能しますか?つまり、A1に値があり、その値をA1に保持したい場合は、どのようにワークシートの数式を使用できますか?または私はどこ他のすべてをコピーする必要があり、その後、(十分に簡単である)戻ってそれをコピーする
デイブ

同じセルに保持したい場合は正しいです。数式を含む2番目の列を作成してから、元のデータに値をコピー/貼り付けする必要があります。これがVBAに対する唯一の欠点です。データをその場で編集することはできません。
エンジニアトースト

...これはおそらくよりアクセスしやすいため、これはおそらく私のものよりも良いソリューションです
デイブ

proper最初の言葉だけが必要でない限り、今はより良い選択であることに同意します。+1
レイスタファリアン

2

以下は、範囲内のテキストをすべてのCAPSに変換する簡単なマクロです。3行目の範囲を変換する範囲に変更します。

Sub Uppercase()
   ' Loop to cycle through each cell in the specified range.
   For Each x In Range("A1:A25")
      ' Change the text in the range to uppercase letters.
      x.Value = UCase(x.Value)
   Next
End Sub

サンプルのもので、更新質問親切にも友人を見ている
Vignesh4303 -ブルーベリー

2
デイブはすでにあなたにその解決策を与えてくれました、そしてあなたはあなたがすべてのセルをキャップに入れたいと言いました。決めてください。
チャーリーRB

0

また、必要なデータをMicrosoft Word文書にコピーし、[ホーム]> [フォント]タブの[Aa]ボタンを使用して大文字と小文字を変更することもできます。次に、コピーしてExcelに貼り付けます。


-2

LibreOfficeを使用してください!Excelファイルを開いたり、変更したり、保存したりできます。1.変更するセルを選択します。2. [書式]> [テキスト]> [大文字と小文字を変更]> [すべての単語を大文字にする]をポイントします。


問題はLibreOfficeについてではありません。
ラモンロッベン
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.