Excel で名と姓の間にスペースを挿入するには、どうすればよいですか?
スプレッドシートで名前リストを扱う際、「JohnSmith」のようにスペースなしで名と姓が結合されているケースに頻繁に遭遇します。これは、他のシステムからのデータインポートやテキストの結合、不適切な書式設定が原因で起こることがよくあります。このような形式は可読性を損なうだけでなく、並べ替えやフィルター機能、さらなるテキスト分析にも悪影響を及ぼす可能性があります。Excel で姓と名を明確に区切りたい場合は、その間にスペースを挿入することが不可欠です。これにより、レポートの明瞭性向上やメールマージ、データ処理全般において大きなメリットが得られます。
以下のスクリーンショットは、名と姓がすべて結合された名前リストの一例を示しています。目的は、各エントリの名と姓の間に素早くスペースを挿入し、データの見やすさと使い勝手を向上させることです。

名と姓の間にスペースをKutools for Excel で追加する![]()
名と姓の間にスペースを数式で追加する(Excel 2021 以降/Excel 365)
名と姓の間にスペースを定義済み関数で追加する
名前と姓が単一の文字列として連結されており、その間にスペースを追加したい場合、Excel で定義済み関数(ユーザー定義関数、UDF とも呼ばれます)を使えば簡単に実現できます。この方法は、対象となる名前の数が多く、手作業での処理が非効率になるような場面で特に威力を発揮します。定義済み関数は、最初の文字以降に現れる各大文字の直前にスペースを自動挿入する仕組みになっており、「JohnSmith」や「MaryJones」など、構成要素が常に大文字で区切られている形式の名前に対して最適です。これにより、作業プロセスが完全に自動化され、手作業によるミスや手間を大幅に削減できます。
ただし、この方法はすべての姓が大文字で始まり、ミドルネームやイニシャルが含まれていないことを前提としています。より複雑な形式の名前には、関数をさらに調整する必要がある場合があります。
この定義済み関数を作成して使用する手順は、次のとおりです。
1。キーボードでAlt + F11を押して、Microsoft Visual Basic for Applications(VBA)ウィンドウを開きます。VBA を初めて使う場合は、Excel のリボンにある「開発」タブを有効にしておくと、よりスムーズにアクセスできます!
2。VBA ウィンドウで、挿入>標準モジュールをクリックすると、空白のコード編集領域が開きます。そこに以下の VBA コードをコピー&ペーストしてください。
コード:名前の間にスペースを追加
Function AddSpaces(pValue As String) As String
'UpdatebyExtendoffice20160908
Dim xOut As String
xOut = VBA.Left(pValue, 1)
For i = 2 To VBA.Len(pValue)
xAsc = VBA.Asc(VBA.Mid(pValue, i, 1))
If xAsc >= 65 And xAsc <= 90 Then
xOut = xOut & " " & VBA.Mid(pValue, i, 1)
Else
xOut = xOut & VBA.Mid(pValue, i, 1)
End If
Next
AddSpaces = xOut
End Function 
3。コードを貼り付けたら、Ctrl + Sを押して保存してください(プロンプトが表示された場合は、マクロ有効ブックとして).xlsm 拡張子でファイルを保存してください)。その後、VBA ウィンドウを閉じてExcel ワークシートに戻りましょう。
修正後の名前を表示する空白セルを選択してください。たとえば、元の名前がセル A1 にある場合は、次の数式を入力します。
=AddSpaces(A1) 数式を入力したら、Enterキーを押して適用してください。すると、適切な位置にスペースが挿入された名前が表示されます。複数の名前を一括処理するには、選択したセルの右下隅にあるオートフィルハンドル(小さな四角)を、スペースを挿入したい範囲までドラッグしましょう。

ヒント:この関数は、最初の文字以降の大文字の前に自動的にスペースを挿入します。そのため、複合姓やイニシャルを含むなど、より複雑な名前のパターンにはコードの調整が必要になる場合があります。
#NAME? エラーが表示された場合は、マクロのセキュリティ設定でマクロの実行が許可されており、かつワークブックがマクロ対応ファイル形式で保存されていることをご確認ください。
名と姓の間にスペースをKutools for Excel で追加する
VBA コードの記述や編集が苦手なExcel ユーザーには、Kutools for Excelのテキストの追加ユーティリティがぴったりです。この直感的なツールを使えば、選択したセル内のすべての大文字の前にスペースを自動挿入可能。幅広いデータに対して、コード不要で素早く対応したいときに最適です。Kutools for Excel は、大規模なデータセットを頻繁に扱い、スクリプトを学ばずに効率的かつ繰り返しのテキスト操作を行いたいユーザーに最適です。手動編集と比べて、時間の大幅な節約だけでなく、長いリスト処理時にありがちなミスのリスクも軽減します。
この機能をご利用いただく手順は、次のとおりです。
1。スペースを挿入したい名前を含むすべてのセルを選択します。Excel リボンで、Kutools > テキスト > テキストの追加をクリックします。

2.表示されるテキストの追加ダイアログボックスで、テキストフィールドにスペース(スペースバーを押して入力)を挿入します。次に、次の場合にのみ追加オプションをオンにして、ドロップダウンメニューから大文字の前を選択してください。この設定により、Kutools は名前の各大文字の前に自動的にスペースを挿入します。ダイアログは次のようになります。

3。設定を完了したら、OKまたは適用をクリックします。すると、Kutools が選択したセルを即座に処理し、すべての名前の大文字の前にスペースが自動的に挿入されたことを確認できます。


Kutools を使用するメリット:この方法ならコーディングスキルは不要!数回のクリックで大量の名前を一気に処理できます。ただし、このツールはすべての大文字の直前にスペースを自動挿入することにご注意ください。ミドルイニシャルや連続する大文字を含む名前の場合は、後で手動で調整が必要になる場合があります。
Kutools for Excel— 300 以上の必須ツールでExcel を強化し、作業をより迅速・簡単に。AI 機能を活用して、スマートなデータ処理と生産性の飛躍的な向上を実現します。今すぐ入手
名と姓の間にスペースを数式で追加する(Excel 2021 以降/Excel 365)
別の方法として、各名前が「名と姓をスペースなしで結合し、姓の頭文字を大文字にする」という単純なパターンに従っている場合、Excel の数式を利用できます。この方法は、VBA やアドインが使えない環境で、シンプルかつ数式ベースの解決策が求められる際に特に便利です。
1。データの隣にある空白セル(たとえば、名前が A1 にある場合は B1)に、次の数式を入力してください。
=TEXTJOIN("",,IF(ISNUMBER(--MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1)),MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1),IF(CODE(MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1))<=90," "&MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1),MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1))))
この数式は、最初の文字以降で最初に現れる大文字(A~Z)の位置を特定し、その位置で名前を分割してスペースを挟み、再結合します。
2。Enter キーを押して数式を適用します。必要に応じて、数式ハンドルを下にドラッグしてすべての行に適用しましょう。データが1 行目から始まる場合は、セル B1 をコピーして列全体に貼り付ければ、すべての名前を一括処理できます。
注:この数式は、名前と姓が結合されており、姓が常に大文字で始まることを前提としています。ミドルイニシャルやその他の複雑なケースが含まれる場合は、数式をさらに調整する必要があるかもしれません。
デモ:Kutools for Excel で名前の間にスペースを追加
最高の Office 業務効率化ツール
| 🤖 | KUTOOLS AI アシスタント:次に基づいてデータ分析を革新します:インテリジェント実行 | コード生成| カスタム数式作成 | データ分析とチャート生成| 拡張機能呼び出し… |
| 人気の機能:検索・ハイライト、または重複をマーキング | 空白行を削除する | データを失うことなく列の結合またはセルを | 数式を使用しない四捨五入... | |
| スーパー LOOKUP:複数条件 VLookup | 複数値 VLookup | 複数シート間 VLookup | ファジーマッチ.... | |
| 高度なドロップダウンリスト:ドロップダウンリストをすばやく作成 | 連動型ドロップダウンリスト | 複数選択可能なドロップダウンリスト.... | |
| 列マネージャー:指定した数の列を追加|列の移動|非表示列の表示状態を切り替え|範囲および列の比較... | |
| 注目の機能:グリッドフォーカス | デザインビュー |強化された数式バー | ワークブックとシートマネージャー | リソースライブラリ(オートテキスト)| 日付ピッカー | ワークシートの統合 | 暗号化/セルの復号化 | リストからメール送信 | スーパーフィルター | 特殊フィルタ(太字のフォントを持つセルをフィルタリング/斜体/取り消し線。。。) 。。。 | |
| トップ15 ツールセット:12 テキストツール(テキストの追加、特定の文字を削除、...)| 50+チャートタイプ(ガントチャート、...)| 40+実用的関数(誕生日に基づいて年齢を計算します、...)| 19 挿入ツール(QR コードを挿入、パスから画像を挿入、...)| 12 変換ツール(単語に変換する、為替レートの変換、...)| 7 結合と分割ツール(高度な行のマージ、セルの分割、...)|さらに多数 |
Kutools for Excel でExcel スキルを強化し、これまでにない効率を体験しましょう。Kutools for Excel は、生産性を高め、時間を大幅に節約できる高度な機能を300 以上提供します。最も必要な機能を今すぐ入手するにはこちらをクリック。。。
Office Tab は Office にタブインターフェースをもたらし、作業を大幅に簡単にします
- Word、Excel、PowerPoint でタブを使った編集と閲覧を有効にします。Publisher、Access、Visio、Project でもご利用いただけます。
- 複数のドキュメントを、新しいウィンドウではなく、同じウィンドウ内の新しいタブで開いたり作成したりできます。
- 日々の生産性を50%も向上させ、毎日数百回ものマウスクリックを削減します!
すべてのKutools アドインが、たった1 つのインストーラーで完結。
Kutools for Officeスイートには、Excel ・Word ・Outlook ・PowerPoint 用のアドインと Office Tab Pro が含まれており、複数の Office アプリを横断して作業するチームに最適です。
- オールインワンスイート— Excel、Word、Outlook、PowerPoint 用アドイン+Office Tab Pro
- インストーラー1 つ、ライセンス1 つ— 数分でセットアップ可能(MSI 対応)
- 連携してさらにパワーアップ— Office アプリ全体で生産性が向上
- 30 日間のフル機能トライアル— 登録不要、クレジットカード不要
- 最高のお得感— 個別アドイン購入よりお得