KutoolsforOffice— 1 つのソリューション、5 つの強力なツール。少ない労力で大きな成果。

Excel でセルの指定位置にテキストと数字で分割を追加

著者Sun変更日

Excel では、セルにテキストや数値を追加するのは非常に一般的な作業です。たとえば、名前の間にスペースを挿入したり、セルにプレフィックスやサフィックスを追加したり、社会保障番号にダッシュを挿入したりすることがよくあります。このチュートリアルでは、Excel で発生するほぼすべての「追加」シナリオを網羅し、それぞれに最適な対応方法をご紹介します。

本チュートリアルのナビゲーション

1.各セルの先頭に追加

1.1 数式を使用してセルの先頭に追加

1.2 フラッシュフィルを使用してセルの先頭に追加

1.3VBA コードを使用してセルの先頭に追加

2.各セルの末尾に追加

2.1 数式を使用してセルの末尾に追加

2.2 フラッシュフィルを使用してセルの末尾に追加

2.3VBA コードを使用してセルの末尾に追加

3.文字列の途中に追加

3.1 数式を使用して文字列の n 文字目の後に追加

3.2 フラッシュフィルを使用して文字列の n 文字目の後に追加

3.3VBA コードを使用して文字列の n 文字目の後に追加

4.必要に応じて特定の位置に文字を追加できるKutools for Excel のテキストの追加機能

4.1 テキストの追加最初の文字の前または最後の文字の後

4.2 指定位置にテキストの追加を追加

4.3 テキストの追加ユーティリティの拡張機能

5.最初の特定のテキストの前後(どちらか)にテキストの追加を追加

5.1 最初の特定のテキストの前にテキストの追加を追加

5.2 最初の特定のテキストの後にテキストの追加を追加

6.各単語の前後(どちらか)に文字を追加

6.1 数式を使用して各単語の前後(どちらか)に文字を追加

6.2 検索と置換を使用して各単語の前後(どちらか)に文字を追加

6.3 VBA コードを使用して各単語の前後(どちらか)に文字を追加

7.文字の間にテキストの追加を追加

7.1 ユーザー定義関数を使用してすべての文字/数字の間にテキストの追加を追加

数式を使用してすべての数字の間にスペースを追加

8.各単語の間に文字を追加

9.テキストと数字で分割の間に文字を追加

9.1 数式を使用してテキストと数字で分割の間に文字を追加

9.2 フラッシュフィルを使用してテキストと数字で分割の間に文字を追加

10.電話番号/社会保障番号にダッシュを追加

10.1 数式を使用して数字にダッシュを追加

10.2 セルの書式設定を使用して数字にダッシュを追加

10.3Kutools for Excel のテキストの追加機能を使用して電話番号にダッシュを追加

11.長さを固定するためにセルに先頭ゼロを追加

11.1 セルの書式設定機能を使用してセルに先頭ゼロを追加

11.2 数式に先頭ゼロを追加

12.長さを固定するために数字に末尾ゼロを追加

13.テキストに末尾スペースを追加

14.テキストまたは数値の前後に引用符/括弧を追加

14.1 セルの書式設定を使用してテキストの前後に引用符/括弧を追加

14.2 数式を使用してテキストの前後に引用符/括弧を追加

14.3VBA を使用してテキストの前後に引用符/括弧を追加

15.数式の結果に直接テキストの追加を追加

注記

このチュートリアルでは、いくつかの具体例を通じて各メソッドをわかりやすく解説しています。以下の VBA コードや数式をご利用の際は、必要に応じて参照先を変更してください。また、サンプルファイルをダウンロードして、実際にメソッドをお試しいただくことも可能です。

doc サンプルサンプルファイルをダウンロードするにはクリックしてください


1。各セルの先頭に追加します

このセクションでは、以下のスクリーンショットのように、各セルの先頭に文字を追加するさまざまな方法をご紹介します。
各セルの先頭にテキストを追加

1.1 数式を使用してセルの先頭に追加


以下の3 つの数式から、お好みの1 つをお選びいただけます。

数式1 結合演算子「&」

アンパサンド(「&」)を使って、複数のテキストを簡単に結合できます。

「テキスト」&セル

数式2 CONCATENATE 関数

CONCATENATE 関数は、テキストをつなぎ合わせるために使用されます。

CONCATENATE(「テキスト」、セル)

数式3 CONCAT 関数

これは Excel 2019、Office 365、および Excel Online 専用の新機能です。

CONCAT(「テキスト」、セル)

一般的な数式では、「セル」はプレフィックスを追加したいテキストが入力されているセルの参照を、「テキスト」はそのセルに追加したい文字列を示します。

上記の例を活用して、数式バーで次のように数式を適用できます。

「&」

=$E$3&B3または=「Iphone」&B3

CONCATENATE 関数

=CONCATENATE($E$3,B3)または=CONCATENATE(「Iphone」,B3)

CONCAT 関数

=CONCAT($E$3,B3)または=CONCAT(「Iphone」,B3)

Enter キーを押して結果を取得し、その後、オートフィルハンドルを下にドラッグして範囲 B3:B6 の各セルに適用します。
数式を使用してセルの先頭に追加

 注意:テキストは二重引用符で囲む必要があります。囲まないと、数式はエラー値 #NAME? を返します。セル参照を使用してテキストを指定する場合は、絶対参照を使用してください。相対参照を絶対参照に変更するには、F4 キーを押します。

1.2 Flash Fill を使用してセルの先頭に追加


Excel 2013 以降をご利用の場合、強力な新機能フラッシュフィルを使えば、上位のセルに入力した内容に基づいて、自動的にセルを埋めることができます。

最初の元データの隣にあるセルを選択し、下図のようにプレフィックステキスト付きで最初のデータを手動で入力します。
プレフィックス付きの最初のデータを手動で入力

その下のセルで、プレフィックステキスト付きの2 番目のデータを入力し始めると、グレーのリストが表示されます。このリストが表示されている状態でEnterキーを押すと、フラッシュフィルが自動的にデータを埋めます。
Enter キーを押してフラッシュフィルでデータを自動入力Enter キーを押してフラッシュフィルでデータを自動入力

プレビューリストが表示されない場合は、「ホーム」タブに移動し、「塗りつぶし」「フラッシュフィル」をクリックして手動で実行してください。

1.3 VBA コードを使用してセルの先頭に追加


VBA コードに慣れている場合は、ここでは範囲内の各セルの先頭にテキストの追加を追加する VBA コードを紹介します。

1。プレフィックステキストを追加したいセル範囲を選択し、Alt+F11キーを押して、Microsoft Visual Basic for Applicationsウィンドウを開きます。

2。次に表示されるウィンドウで、挿入 > モジュールをクリックして、新しい空白のモジュールを挿入します。
[挿入]>[標準モジュール]をクリックして新しい空白モジュールを挿入

3。以下の VBA コードを新しいモジュールにコピー&ペーストしてください。

VBA:セルの先頭に追加

Sub AppendToExistingOnLeft()
Dim c As Range
For Each c In Selection
If c.Value <> "" Then c.Value = "Iphone" & c.Value
Next
End Sub
注意:コードスクリプト内で、Iphoneは選択したセルの先頭に追加したいテキストです。必要に応じて変更してください。

コードをモジュールにコピー&ペースト

4。F5キーを押すか、ウィンドウ内の実行ボタン実行ボタンをクリックして、VBA コードを実行してください。

これで、選択したすべてのセルの先頭に「Iphone」というテキストが追加されました。
選択したすべてのセルの先頭に指定したテキストが追加されました


2。各セルの末尾に追加

セルの先頭だけでなく、末尾にテキストを追加することもよくあります。ここでは、各セルの末尾に単位を追加する例を以下に示します(スクリーンショット参照)。
各セルの末尾にテキストを追加

2.1 数式を使用してセルの末尾に追加


以下の3 つの数式から、お好みの1 つをお選びいただけます。

数式1 結合演算子「&」

アンパサンド(「&」)を使って、複数のテキストを簡単に結合できます。

セル&「テキスト」

数式2 CONCATENATE 関数

CONCATENATE 関数は、テキストをつなぎ合わせるために使用されます。

CONCATENATE(セル、「テキスト」)

数式3 CONCAT 関数

これは、Excel 2019、Office 365、およびExcel Online でのみご利用いただける新機能です。

CONCAT(セル、「テキスト」)

これらの汎用的な数式では、「セル」は接尾辞を追加したいテキストが入力されているセルの参照を、「テキスト」はそのセルに追加する文字列を表します。

上記の例に基づき、数式バーで次の数式がご利用いただけます。

「&」

=B3&$E$3または=B3&「Kg」

CONCATENATE 関数

=CONCATENATE(B3, $E$3)または=CONCATENATE(B3, 「Kg」)

CONCAT 関数

=CONCAT(B3, $E$3)または=CONCAT(B3, 「Kg」)

Enterキーを押して結果を取得し、その後、オートフィルハンドルを下にドラッグして範囲 B3:B6 の各セルの末尾まで適用します。
数式を使用してセルの末尾に追加

 注意:テキストは二重引用符で囲む必要があります。囲まないと、数式はエラー値#NAME?を返します。テキストを含むセル参照を使用する場合は、絶対参照を使用することを忘れないでください。相対参照を絶対参照に変更するには、F4 キーを押します。

2.2 フラッシュフィルを使用してセルの末尾に追加


Excel 2013 以降をご利用の場合、強力な新機能フラッシュフィルが、入力済みの上位セルに基づいて自動的にセルを埋めてくれます。

元データの最初のセルの隣にあるセルを選択し、以下のように接尾辞付きの最初のデータを手動で入力します。
サフィックス付きの最初のデータを手動で入力

その後、最初の結果の下にあるセルをアクティブにして、データ > フラッシュフィルを選択すると、アクティブセルから下のすべてのセルが自動的に埋められます。
アクティブセルを含む下のすべてのセルが自動的に入力されます
アクティブセルを含む下のすべてのセルが自動的に入力されます

2.3 VBA コードを使用してセルの末尾に追加


以下の VBA コードを使用すると、指定範囲の各セルの末尾にテキストの追加を追加できます。

1。接尾辞を追加したいセル範囲を選択し、Alt+F11キーを押して、Microsoft Visual Basic for Applicationsウィンドウを開きます。

2。表示されたウィンドウで、挿入 > 標準モジュールをクリックして、新しい空白のモジュールを挿入します。
[挿入]>[標準モジュール]をクリックして新しい空白モジュールを挿入

3。以下の VBA コードを新しいモジュールにコピー&ペーストします。

VBA:セルの末尾に追加

Sub AppendToExistingOnRight()
Dim c As Range
For Each c In Selection
If c.Value <> "" Then c.Value = c.Value & "Kg"
Next
End Sub
注意:コードスクリプト内で、Kgは選択したセルの末尾に追加したいテキストです。必要に応じて変更してください。

コードをモジュールにコピー&ペースト

4。F5キーを押すか、実行ボタン実行ボタンをクリックして、ウィンドウ内で VBA コードを実行します。

これで、「Kg」というテキストが各セルの末尾に追加されました。
各セルの末尾に指定したテキストが追加されました


3。文字列の途中に追加

多くの場合、セルの先頭や末尾にテキストを追加するのは簡単ですが、セルの中間位置にテキストを挿入するのはやや難しく感じられるかもしれません。たとえば、以下のスクリーンショットのように、範囲 B3:B7 の各セルにおいて、2 文字目の直後にコロン(:)などの区切り文字を追加したい場合などが該当します。
文字列の途中にテキストを追加

3.1 数式を使用して文字列の n 文字後に追加


この作業のための数式を4 つご用意しました。お好みのものを選んで、ぜひご利用ください。

数式1:LEFT 関数と RIGHT 関数を組み合わせる

LEFT(セル、 n) & 「テキスト」 & RIGHT(セル、 LEN(セル) -n)

数式2:CONCATENATE(または CONCAT)、RIGHT、LEN 関数を組み合わせる

CONCATENATE(LEFT(セル、 n)、 「テキスト」、 RIGHT(セル、 LEN(セル) -n))

または

CONCAT(LEFT(セル、 n)、 「テキスト」、 RIGHT(セル、 LEN(セル) -n))

数式3:REPLACE 関数

REPLACE(セル、 n+1, 0, 「テキスト」)

これらの汎用的な数式において、「セル」はテキストを挿入したい位置に対応するセル参照を、「テキスト」はそのセルに追加する文字列を、「n」はテキストの何文字目の後に新しいテキストを挿入するかを示す数値を表します。

上記の課題を解決するには、以下の数式をご活用ください。

LEFT 関数と RIGHT 関数を組み合わせる

=LEFT(B3, 2) & ":" & RIGHT(B3, LEN(B3) -2)または=LEFT(B3, 2) & $E$3 & RIGHT(B3, LEN(B3) -2)

CONCATENATE(または CONCAT)、RIGHT、LEN 関数を組み合わせる

=CONCATENATE(LEFT(B3, 2), ":", RIGHT(B3, LEN(B3) -2))または=CONCAT (LEFT(B3, 2), ":", RIGHT(B3, LEN(B3) -2))

REPLACE 関数

=REPLACE(B3, 2+1, 0, ":")または=REPLACE(B3, 2+1, 0, $E$3)

Enterキーを押して結果を取得し、その後、オートフィルハンドルを下にドラッグして、範囲 B3:B7 の各セルの2 文字目の後に適用します。
数式を使用して文字列の n 文字目の後に追加

注意:テキストは二重引用符で囲む必要があります。囲まないと、数式はエラー値 #NAME? を返します。セル参照を使用してテキストを指定する場合は、絶対参照を使用してください。相対参照を絶対参照に変更するには、F4 キーを押します。

3.2 フラッシュフィルを使用して文字列の n 文字後に追加


Excel 2013 以降のバージョンをご利用の場合、フラッシュフィル機能により、入力済みの上位セルに基づいて自動的にセルが埋められます。

元データの最初のセルの隣にあるセルを選択し、以下のように2 文字目の後にコロンを含んだ最初のデータを手動で入力します。
2 文字目の後にコロンを付けた最初のデータを手動で入力

その後、最初の結果の下にあるセルをアクティブにして、Ctrl+Eキーを押してフラッシュフィルコマンドを実行すると、アクティブセルより下のすべてのセルが自動的に埋められます。
Ctrl + E キーを押してセルを自動入力

注意:Mac システムをご利用の場合は、Command + E キーを押してください。

3.3 VBA コードを使用して文字列の n 文字後に追加


この作業は VBA コードでも実現できます。

1。Alt+F11キーを押すと、Microsoft Visual Basic for Applicationsウィンドウが開きます。

2。表示されたウィンドウで、挿入>標準モジュールをクリックして、新しい空白のモジュールを挿入してください。
[挿入]>[標準モジュール]をクリックして新しい空白モジュールを挿入

3。以下の VBA コードを新しいモジュールにコピー&ペーストしてください。

VBA:セルの中間に追加

Sub AddToMidduleOfString()
    Dim Rng As Range
    Dim WorkRng As Range
    On Error Resume Next
    xTitleId = "KutoolsforExcel"
    Set WorkRng = Application.Selection
    Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
    For Each Rng In WorkRng
        Rng.Value = VBA.Left(Rng.Value, 2 & ":" & VBA.Mid(Rng.Value, 3, VBA.Len(Rng.Value) - 1)
    Next
End Sub
注意:コードスクリプト内で、2は、テキストを追加する位置を指定する数値です。2は、挿入位置と追加するテキストの長さの合計を表します。別の例として、「A B」という文字列の1 文字目の後に「and」を追加する場合、スクリプトは次のようになります。Rng.Value = VBA.Left(Rng.Value,)1) & "and"は追加したいテキストであり、314

コードをモジュールにコピー&ペースト

4。F5キーを押すか、ウィンドウ内の実行ボタンデータ範囲を選択をクリックして VBA コードを実行すると、テキストを追加するセルを選択するダイアログが表示されます。
データ範囲を選択

5。OKをクリックすると、範囲 B19:B23 の各セルの2 文字目の後に「:」が追加されます。
各セルの2文字目の後に指定したテキストが追加されました1


4。テキストの追加をKutools for Excel で実行(必要な特定の位置に文字を追加)

数式や VBA に疲れてしまったら、強力で便利なツールKutools for Excelをお試しください!このツールにはテキストの追加機能が搭載されています。
Kutools のテキスト追加機能

このテキストの追加機能では、以下の操作が可能です。

  • テキストの追加最初の文字の前
  • テキストの追加最後の文字の後
  • 指定位置にテキストの追加を追加
  • 拡張機能
    テキストの追加大文字の前
    テキストの追加小文字の前
    テキストの追加大文字と小文字の前
    テキストの追加数字の前
Kutools for Excelは300 以上の高度な機能を提供し、複雑な作業を効率化して、創造性と生産性を高めます。AI 機能と統合されたKutools は、正確にタスクを自動化し、データ管理を簡単にします。Kutools for Excel の詳細情報。。。         無料トライアル。。。

テキストを追加したいセルを選択し、Kutools > テキスト > テキストの追加をクリックして、テキストの追加機能を適用します。
 Kutools のテキスト追加機能をクリック
4.1 テキストの追加:最初の文字の前または最後の文字の後に挿入


テキストの追加ダイアログで、「テキスト」テキストボックスにセルに追加したいテキストを入力し、「位置」セクションでテキストをチェックして、位置最初の文字の前に設定します。
テキストを入力し、「最初の文字の前」をチェック

適用またはOKをクリックして、追加を完了してください。
[適用]または[OK]をクリックして結果を取得

テキストをセルの最後の文字の後に追加するには、「テキスト」テキストボックスに追加したいテキストを入力し、「位置」セクションでテキストをチェックしてください。最後の文字の後位置
テキストを入力し、「最後の文字の後」をチェックしてセル値の後にテキストを追加

適用またはOKをクリックして、追加を完了してください。
[適用]または[OK]をクリックして結果を取得

4.2 テキストの追加を指定位置に追加


場合によっては、セルの中央にテキストを追加したり、セル内の複数の位置にテキストを挿入したいことがあります。たとえば、以下のスクリーンショットのように、社会保障番号の3 桁目と7 桁目の後に区切り文字「-」を挿入するようなケースです。
指定位置にテキストを追加

テキストの追加ダイアログで、テキストテキストボックスにテキストを入力し、指定するオプションをオンにして、コンマ区切りで位置をテキストボックスに入力した後、OKまたは適用をクリックします。
ダイアログボックスでオプションを指定

4.3 テキストの追加ユーティリティの拡張機能


通常の位置(先頭、末尾、指定位置)へのテキスト追加に加え、テキストの追加ユーティリティは、さらに多彩なテキスト追加にも対応しています。

  • 大文字の前
  • 小文字の前
  • 大文字と小文字の前
  • 数字の前

テキストの追加ダイアログで、テキストテキストボックスにテキストを入力し、次の場合のみ追加オプションをオンにして、下のドロップダウンメニューをクリックして必要な操作を選択してください。
その他の使用例の結果
その他の使用例の結果

テキストの追加機能以外にも、Kutools for Excel にはExcel でのさまざまな作業を支援するその他の300+便利な機能が備わっています。今すぐ無料でダウンロードしてください。


5。最初の特定のテキストの前または後にテキストを追加

このセクションでは、Excel で特定のテキストが最初に出現する前または後にテキストの追加するための数式を紹介します。

5.1 最初の特定テキストの前にテキストの追加


たとえば、以下のスクリーンショットのように、セル内の最初の「price」テキストの前に「(sale)」を追加したいとします。
特定のテキストの前にテキストを追加

Excel では、REPLACE 関数や SUBSTITUTE 関数を使ってこの作業を簡単に実行できます。

REPLACE 関数

REPLACE(セル,FIND(「検索テキスト」、セル)、0、「追加テキスト」)

SUBSTITUTE 関数

SUBSTITUTE(セル、「検索テキスト」、「置換テキスト」、1)

このケースでは、上記の数式を次のようにご活用ください。

=REPLACE(B4,FIND(「price」,B4),0,「(sale)」)

または

=SUBSTITUTE(B4,「price」,「(sale)price」,1)

このケースにおける数式の引数は、次のとおりです。

セル: B4、

検索テキスト: price、

追加テキスト: (sale)、

置換テキスト: (sale)price。

Enterキーを押して最初の追加結果を取得し、必要に応じてオートフィルハンドルをドラッグして他のセルにも適用しましょう。
数式を使用して特定のテキストの前にテキストを追加

5.2 最初の特定テキストの後にテキストの追加


たとえば、以下のスクリーンショットのように、セル内の最初のコロン「:」の後に通貨記号「$」を追加したい場合があります。
特定のテキストの後にテキストを追加

Excel では、REPLACE 関数と SUBSTITUTE 関数を使ってこの作業を簡単に実行できます。

REPLACE 関数

REPLACE(セル,FIND(「検索テキスト」、セル)、検索テキストの長さ、「置換テキスト」)

SUBSTITUTE 関数

SUBSTITUTE(セル、「検索テキスト」、「置換テキスト」)

このケースでは、上記の数式を次のようにご活用ください。

=REPLACE(B12,FIND(":",B12),1,「:$」)

または

=SUBSTITUTE(B12,":",「:$」)

このケースで使用する数式の引数は、次のとおりです。

セル: B12、

検索テキスト: :、

置換テキスト::$。

検索テキストの長さ: 1

Enterキーを押して最初の補完結果を取得し、必要に応じてオートフィルハンドルをドラッグして他のセルにも適用してください。
数式を使用して特定のテキストの後にテキストを追加


6。各単語の前または後に文字を追加

このチュートリアルでは、セル内の各単語の前または後に文字を追加する方法として、数式・検索と置換・ VBA の3 つのアプローチをご紹介します。

各単語の前に文字を追加
各単語の前に文字を追加
各単語の後に文字を追加
各単語の後に文字を追加

6.1 数式を使用して各単語の前後(どちらか)に文字を追加


SUBSTITUTE 関数を使えば、この作業を簡単に実行できます。一般的な数式は次のとおりです。

各単語の前に追加

「文字」&SUBSTITUTE(文字列、 「 」、「 文字」)

各単語の後に追加

SUBSTITUTE(文字列、「 」、「文字 」)&「文字」

B3:B6 のリスト内のすべての単語の前に「+」を追加するには、次の数式をご利用ください。

=「+」&SUBSTITUTE(B3, " "," +")

Enterキーを押して最初の結果を取得し、オートフィルハンドルを下にドラッグすれば、すべての結果が瞬時に手に入ります!
数式を使用して各単語の前に文字を追加

B11:B14 のリスト内の各単語の後に「($)」を追加するには、次の数式を使用してください。

=SUBSTITUTE(B11,「 」,「($) 」)&「($)」

Enterキーを押して最初の結果を表示し、オートフィルハンドルを下にドラッグすれば、すべての結果が一気に取得できます!
オートフィルハンドルを下にドラッグしてすべての結果を取得

6.2 検索と置換で各単語の前または後に文字を追加する


最初の単語を除く各単語の前に文字を追加したい場合や、最後の単語を除く各単語の後に文字を追加したい場合(以下のスクリーンショット参照)は、Excel に標準搭載されている検索と置換機能を使えば、簡単に実現できます。

最初の単語を除く各単語の前に追加
最初の単語を除く各単語の前に追加

最後の単語を除く各単語の後に追加最後のセルを選択する
最後の単語を除く各単語の後に追加

1。各単語の前または後に文字を追加したいセルを選択し、Ctrl+Hキーを押して、検索と置換ダイアログを表示します。

2。検索する文字列テキストボックスに半角スペースを入力し、置換後の文字列テキストボックスにスペース付きの新しい文字列を入力してから、最後にすべて置換ボタンをクリックします。

操作一般
各単語の前に文字を追加新しい文字をスペースの後に追加各単語の前に(sale)を追加

[検索と置換]ダイアログボックスでオプションを指定最初の単語を除く各単語の前に指定したテキストが追加されました

操作一般
各単語の後に文字を追加新しい文字の後にスペースを追加各単語の後に-を追加

[検索と置換]ダイアログボックスでオプションを指定最後の単語を除く各単語の後に指定したテキストが追加されました

6.3 VBA コードを使用して各単語の前後(どちらか)に文字を追加

ここでは、各単語の前または後に文字を追加するための2 つの VBA コードをご紹介します。以下の手順に従って、コードを実行してください。

1。Alt+F11キーを押して、Microsoft Visual Basic for Applicationsウィンドウを開きます。

2。表示されたウィンドウで、挿入 > 標準モジュールをクリックして、新しい空白のモジュールを挿入します。
[挿入]>[標準モジュール]をクリックして新しい空白モジュールを挿入

3。以下の VBA コードをコピーし、モジュールに貼り付けます。

すべての単語の前に追加

Sub InsertCharBeforeWord()
'UpdateByExtendOffice
Dim ws As Worksheet
Dim xRg As Range
Dim xSRg As Range
Dim xCell As Range
Dim xInStr As String
Dim xArr As Variant
Dim xValue As String
    On Error Resume Next
   
    Set xSRg = Application.Selection
    Set xRg = Application.InputBox("Select cells(continuous):", "Kutools for Excel", xSRg.Address, , , , , 8)
    If xRg Is Nothing Then Exit Sub
    xInStr = Application.InputBox("Type characters you want to add:", "Kutools for Excel", "", , , , , 2)
    If StrPtr(xInStr) = 0 Then Exit Sub
    Application.ScreenUpdating = False
    For Each xCell In xRg
        xArr = Split(xCell.Text, " ")
        xValue = ""
        For Each xStr In xArr
            If Trim(xStr) <> "" Then
                If xValue = "" Then
                    xValue = xInStr & Trim(xStr)
                Else
                    xValue = xValue & " " & xInStr & Trim(xStr)
                    End If
            End If
        Next
        xCell.Value = xValue
    Next
    Application.ScreenUpdating = True
End Sub

すべての単語の後に追加

Sub InsertCharAfterWord()
'UpdateByExtendOffice
Dim ws As Worksheet
Dim xRg As Range
Dim xSRg As Range
Dim xCell As Range
Dim xInStr As String
Dim xArr As Variant
Dim xValue As String
    On Error Resume Next
 
    Set xSRg = Application.Selection
    Set xRg = Application.InputBox("Select cells(continuous):", "Kutools for Excel", xSRg.Address, , , , , 8)
    If xRg Is Nothing Then Exit Sub
   
    xInStr = Application.InputBox("Type characters you want to add:", "Kutools for Excel", "", , , , , 2)
    If StrPtr(xInStr) = 0 Then Exit Sub
   
    Application.ScreenUpdating = False
    For Each xCell In xRg
        xArr = Split(xCell.Text, " ")
        xValue = ""
        For Each xStr In xArr
            If Trim(xStr) <> "" Then
                If xValue = "" Then
                    xValue = Trim(xStr) & xInStr
                Else
                    xValue = xValue & " " & Trim(xStr) & xInStr
                End If
            End If
        Next
        xCell.Value = xValue
    Next
    Application.ScreenUpdating = True
End Sub

4。F5キーを押してコードを実行します(または)実行ボタンデータ範囲を選択をクリックしてもかまいません)。連続したセル範囲の選択を促すダイアログが表示されるので、OKをクリックします。
データ範囲を選択

5。2 つ目のダイアログで追加したい文字を入力し、OKをクリックしてください。
 追加する文字を入力

すると、指定した文字が各単語の先頭または末尾に自動的に追加されます。


7。文字の間にテキストを挿入

場合によっては、すべての文字の間にテキストを追加したいことがあります。このセクションでは、2 つのシナリオをご紹介します。1 つはすべての文字の間にテキストを追加する方法、もう1 つは各数字の間にスペースを挿入する方法です。

7.1 ユーザー定義関数で各文字/数字の間にテキストの追加


文字列内のすべての文字の間に特定の文字を挿入するには、ユーザー定義関数を利用できます。

この例では、すべての文字の間にスペースを挿入します。

1。Alt+F11キーを押してMicrosoft Visual Basic for Applicationsウィンドウを表示します。

2。表示されたウィンドウで、挿入 > 標準モジュールをクリックして、新しい空白のモジュールを挿入します。
[挿入]>[標準モジュール]をクリックして新しい空白モジュールを挿入

3。以下の VBA コードをモジュールにコピー&ペーストしてください。

文字の間にテキストの追加

Function AddText(Str As String) As String
    Dim i As Long
    For i = 1 To Len(Str)
        AddText = AddText & Mid(Str, i, 1) & " "
    Next i
    AddSpace = Trim(AddSpace)
End Function

4。コードを保存してこのウィンドウを閉じ、ワークシートに戻ったら、追加結果を表示したいセルに次の数式を入力します。

=AddText(B3)

B3 は、文字の間にスペースを挿入したい文字列が含まれるセルです。

Enterキーを押して結果を取得し、必要に応じてオートフィルハンドルを他のセルにドラッグしてください。
単語間に文字を追加する数式を入力

 

注意

1)VBA コード内で、「 」を必要に応じて他のテキストに変更できます。たとえば、"-"に変更すると、文字の間に「-」が挿入されます。

2)このコードはすべての文字の後に新しいテキストを追加します。必要ない場合は、以下の数式を使用して最後のテキストの追加を削除できます。数式の詳細については、次のページをご覧ください:

Excel でセルや文字列の先頭または末尾から N 文字を削除する方法

LEFT(セル,LEN(セル)-テキストの長さ)

7.2 数式で各数字の間にスペースを追加する


数値を含む文字列の数字の間にスペースを挿入したい場合は、TEXT 関数をご利用いただけます。

注意:スペースを挿入したい範囲の数値はすべて同じ桁数である必要があります。そうでない場合、一部の結果が正しくない可能性があります。

B10:B12 の範囲に8 桁の数字がリストされているとします。結果を表示したいセルにカーソルを置き、次の数式を入力してください。

=TEXT(B10,「# # # # # # # #」)

Enterキーを押して、オートフィルハンドルを他のセルにドラッグします。
数式で数字の間にスペースを追加

数字の桁数が5 桁の場合、数式は=TEXT(B10,「# # # # #」)のように変更されます。


8。各単語の間に任意の文字を挿入

すべての単語の間に文字(複数可)を追加したい場合、たとえば以下のスクリーンショットのように、「first」「middle」「姓」の間にスペースを挿入するには、ユーザー定義関数をご利用いただけます。
単語間に文字を追加

1。Alt+F11キーを押してMicrosoft Visual Basic for Applicationsウィンドウを表示します。

2。表示されたウィンドウで、挿入 > モジュールをクリックして、新しい空白のモジュールを挿入します。

3。以下の VBA コードをモジュールにコピー&ペーストしてください。

単語の間に文字を追加する

Function AddCharacters(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
AddCharacters = xOut
End Function

4。コードを保存して「このウィンドウを閉じる」をクリックし、ワークシートに戻ったら、結果を表示したいセルに以下の数式を入力してください。

=AddCharacters(B3)

B3 は、単語の間にスペースを挿入したい文字列が含まれるセルです。

5。Enterキーを押して結果を取得し、必要に応じてオートフィルハンドルをドラッグして他のセルにも適用してください。
単語間に文字を追加する数式を入力

注意:VBA コード内で、「 」を必要に応じて他のテキストに変更できます。たとえば、"-"を変更して単語間に-を追加できます。

9。テキストと数字の分割位置に文字を追加

以下のスクリーンショットのように、テキストと数字の間に特定の文字(複数可)を挿入する方法を、ここでは2 つご紹介します。
テキストと数字の間に文字を追加

9.1 数式を使用してテキストと数字で分割の間に文字を追加する


テキストが数字の前にある場合、汎用的な数式は次のとおりです。

TRIM(REPLACE(string,MIN(FIND({1,2,3,4,5,6,7,8,9,0},string&"1234567890")),0,"-"))

上記の例を使用する場合は、次のように数式を入力してください。

=TRIM(REPLACE(B4,MIN(FIND({1,2,3,4,5,6,7,8,9,0},B4&"1234567890")),0,"-"))

Enterキーを押して最初の結果を取得し、その後、オートフィルハンドルをドラッグしてこの数式を他のセルにコピーします。
数式でテキストと数字の間に文字を追加

数字がテキストの前にある場合、汎用的な数式は次のとおりです。

LEFT(string,SUM(LEN(string)-LEN(SUBSTITUTE(string,{0,1,2,3,4,5,6,7,8,9},「」))))&"."&RIGHT(string,LEN(B13)- SUM(LEN(string)-LEN(SUBSTITUTE(string, {0,1,2,3,4,5,6,7,8,9}, 「」))))

上記の例を使用する場合は、次のように数式を入力してください。

=LEFT(B13,SUM(LEN(B13)-LEN(SUBSTITUTE(B13,{0,1,2,3,4,5,6,7,8,9},「」))))&"."&RIGHT(B13,LEN(B13)- SUM(LEN(B13)-LEN(SUBSTITUTE(B13, {0,1,2,3,4,5,6,7,8,9}, 「」))))

Enterキーを押して最初の結果を取得し、その後、オートフィルハンドルをドラッグしてこの数式を他のセルにコピーします。
この数式を他のセルに適用するにはオートフィルハンドルをドラッグ

9.2 フラッシュフィルを使用してテキストと数字で分割の間に文字を追加する


Excel 2013 以降のバージョンをご利用の場合、フラッシュフィル機能が、テキストと数字を分割する際に文字(複数可)を追加するのに役立ちます。

元のデータの隣に、テキストと数字を区切る文字(複数可)を挿入した新しいデータを入力し、Enter キーを押して最初の結果の次のセルに移動します。
元のデータの隣に新しいデータを入力し、Enter キーを押して最初の結果の次のセルに移動

次に、Ctrl+Eキーを押して、フラッシュフィルを有効にしてください。
Ctrl + E キーを押してフラッシュフィルを有効化

拡張機能

このチュートリアルでは、日常生活や仕事で実際に遭遇する可能性のあるテキスト追加のシナリオをいくつかご紹介します。


10。電話番号や社会保障番号にダッシュを追加

場合によっては、以下スクリーンショットのように、シリアル番号や社会保障番号など、一連の数字にダッシュなどの区切り文字を追加する必要があります。数百もの番号に手作業で区切り文字を挿入するのは非常に手間がかかります。そこで、この作業を素早く効率的に行うための3 つの便利な方法をご紹介します。
電話番号や社会保障番号にダッシュを追加

10.1 数式で数字にダッシュを追加する


数字にダッシュを素早く追加できる数式が2 つあります。セル B3 の3 桁目と6 桁目の後にダッシュを追加するには、次のように数式を入力してください。

REPLACE 関数

=REPLACE(REPLACE(B3,4,0,"-"),8,0,"-")

TEXT 関数

=TEXT(B3,「???-???-??? 」)

Enterキーを押して最初の結果を取得し、その後、オートフィルハンドルを他のセルにドラッグします。
数式で数字にダッシュを追加

注意

上記の数式の引数は必要に応じてカスタマイズ可能です。たとえば、2 桁目、4 桁目、6 桁目の後に"-"を追加したい場合は、次のように数式を使用します:

=REPLACE(REPLACE(REPLACE(B3,3,0,"-"),6,0,"-"),9,0,"-")

=TEXT(B3,「??-??-??-??? 」)

 

10.2 セルの書式設定で数字にダッシュを追加する


元のセル内の数字に直接ダッシュを追加するには、セルの書式設定機能をご活用ください。

1。ダッシュを追加したい数値を選択し、Ctrl+1キーを押して、セルの書式設定ダイアログを表示します。

2。セルの書式設定ダイアログで、数値タブの分類セクションからユーザー設定を選択します。

3。右側の種類セクションのテキストボックスに###-###-###と入力して、OKをクリックします。
ダイアログボックスでセルの書式を設定

これで、選択した数字にダッシュが追加されました。
選択した数字にダッシュが追加されました

10.3 Kutools for Excel のテキストの追加で電話番号にダッシュを追加する


Excel にKutools for Excelがインストールされているなら、テキストの追加機能がこの作業をさらにスムーズにサポートします!

Kutools for Excelは300 以上の高度な機能を提供し、複雑な作業を効率化して、創造性と生産性を高めます。AI 機能と統合されたKutools は、正確にタスクを自動化し、データ管理を簡単にします。Kutools for Excel の詳細情報。。。         無料トライアル。。。

1。ダッシュを追加したい数字を含むセルを選択し、Kutools>テキスト>テキストの追加をクリックします。
[Kutools]>[テキスト]>[テキストの追加]をクリック

2。テキストの追加ダイアログで、テキストテキストボックスにダッシュやその他の区切り文字を入力し、指定オプションを選択して、ダッシュを挿入したい位置をカンマ区切りで下のテキストボックスに入力してください。
ダイアログボックスでオプションを指定

3。OKまたは[適用]をクリックすると、選択した数字にダッシュが追加されます。

30 日間無料で追加テキストをダウンロードできます。


11。セルに先頭ゼロを付けて、桁数を固定する

桁数が異なる数字のリストを、以下のスクリーンショットのように先頭にゼロを付けて統一し、見やすくしたい場合があります。ここでは、そのための2 つの方法をご紹介します。
長さを固定するためにセルに先行ゼロを追加

11.1 セルの書式設定機能でセルに先頭ゼロを追加する


セルの桁数を固定し、先頭にゼロを追加するには、セルの書式設定のカスタム形式機能をご利用ください。

1。先頭にゼロを追加したいセルを選択し、Ctrl+1キーを押して、セルの書式設定ダイアログを表示します。

2。セルの書式設定ダイアログで、数値タブの分類セクションからユーザー設定を選択します。

3。右側の種類セクションのテキストボックスに0000と入力します(数字を4 桁固定にするには「0000」と入力してください。5 桁など他の桁数にしたい場合は、「00000」のように対応する個数のゼロを入力できます)。その後、OKをクリックします。
ダイアログボックスでユーザー定義書式を指定

これで数字の先頭にゼロが付加され、すべて同じ桁数になりました。
数字に先行ゼロが追加され、すべて同じ長さになりました

注意:元のデータの長さが設定された長さを超える場合、先頭ゼロなしで元のデータが表示されます。


11.2 数式に先頭ゼロを追加する


元のデータを変更したくない場合は、別のセルに数式を使って数字の先頭にゼロを追加できます。

この作業をサポートする関数が3 つあります。

数式1 TEXT 関数

TEXT(数値、「00…」)

数式2 RIGHT 関数

RIGHT(「00…」&数値,桁数)

数式3 BASE 関数

BASE(数値,10,桁数)

数式に含まれるゼロの個数は、その数字の桁数と一致します。

ここでは数字の桁数を4 桁に設定するものとし、以下の数式をご利用ください。

=TEXT(B10,"0000")

=RIGHT("0000"&B10,4)

=BASE(B10,10,4)

Enterキーを押した後、オートフィルハンドルを下にドラッグします。
数式でセルに先行ゼロを追加

注意元のデータの長さが設定された長さを超える場合、先頭のゼロを付けずに元のデータが表示されます。


12。数値の末尾にゼロを追加して、桁数を固定します。

数値の末尾にゼロを追加して固定長にする場合(たとえば、下のスクリーンショットのようにセル B3:B7 の数値を5 桁の固定長にしたい場合)、その処理に数式を活用できます。
長さを固定するために数字に末尾ゼロを追加

REPT 関数

number&REPT("0",length-LEN(number))

この数式では、引数「number」は末尾にゼロを追加したい数値またはセル参照を表し、引数「length」は設定する固定長を指定します。

以下の数式を使用してください:

=B3&REPT("0",5-LEN(B3))

Enter キーを押して、オートフィルハンドルを下方向にドラッグし、この数式を必要なセルに適用します。
数式で長さを固定するために数字に末尾ゼロを追加


13。テキストに末尾スペースを追加

ワークシートからメモ帳にデータをエクスポートまたはコピーする際、セルの値の長さが異なるため、テキストが整然と並ばないことがあります。下のスクリーンショットのように整った見た目に仕上げるには、末尾にスペースを追加する必要があります。
テキストに末尾スペースを追加

この作業を解決するには、REPT 関数が役立ちます。

LEFT(text & REPT(「 」,max_length),max_length)

この数式では、引数「text」には末尾にスペースを追加したいテキストまたはセル参照を指定し、引数「max_length」にはテキストを統一する固定長(使用するテキストの最大文字数以上)を指定する必要があります。

セル B3:C6 のテキストに末尾スペースを追加するには、以下の数式を使用してください:

=LEFT(B3 & REPT(「 」,10),10)

Enter キーを押して、オートフィルハンドルを必要なすべてのセルにドラッグします。

このケースでは、使用されているテキストの最長が9 文字のため、ここでは10 を使用しています。
数式でテキストに末尾スペースを追加


14。テキストまたは数値の前後に引用符/括弧を追加

場合によっては、下のスクリーンショットのように、セル内のテキストや数値の前後に引用符や括弧を追加する必要があります。手作業で1 つずつ入力する以外にも、Excel にはこれを素早く処理できる2 つの方法があります。
テキストまたは数字の前後に引用符を追加

14.1 セルの書式設定で引用符/括弧を前後に追加


元のデータ内のテキストの前後に引用符を追加したい場合は、Excel のセルの書式設定機能が便利です。

1。引用符を追加したいセルを選択し、Ctrl+1キーを押して、セルの書式設定ダイアログを表示します。

2。セルの書式設定ダイアログで、数値タブの分類リストからユーザー定義を選択し、右側の種類テキストボックスに「''」@「''」と入力して、OKをクリックします。
ダイアログボックスでユーザー定義書式を指定

選択したセル内のテキストの前後に引用符が追加されました。

テキストの前後に括弧を追加したい場合は、セルの書式設定ダイアログの[種類]テキストボックスに(@)と入力します。

14.2 数式で引用符/括弧を前後に追加


他のセルのテキストに引用符を追加するためにも数式を使用できます。

&演算子を使用

「」「」&text&「」「」

または

char(34)&text&char(34)

ここではセル B11 のテキストを使用するものとして、以下の数式を適用してください:

=「」""&B11&""""

または

=char(34)&B11&char(34)

Enter キーを押して、オートフィルハンドルを下方向にドラッグし、セルを埋めましょう。
数式で前後に引用符を追加

テキストの前後に括弧を追加したい場合は、「(」&text&「)」という数式をご利用ください。

14.3 VBA で引用符/括弧を前後に追加


この作業を VBA コードで処理したい場合は、以下の VBA をご利用ください。

1。Alt+F11キーを押してMicrosoft Visual Basic for Applicationsウィンドウを表示します。

2。表示されたウィンドウで、挿入 > 標準モジュールをクリックして、新しい空白のモジュールを挿入します。

3。以下の VBA コードを新しいモジュールにコピー&ペーストします。

VBA:テキストの前後に引用符を追加

Sub addquotationmarksorbrackets()
'UpdatebyExtendOffice
Dim Rng As Range
Dim WorkRng As Range
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
For Each Rng In WorkRng
Rng.Value = """" & Rng.Value & """"
Next
End Sub
 注意:コードスクリプト内で、「」「」 & Rng.Value & 「」「」はテキストの前後に「」を追加することを示しています。テキストの前後に括弧()を追加したい場合は、これを「(」 & Rng.Value & 「)」に変更してください。

コードをモジュールにコピー&ペースト

4。F5キーを押すか、ウィンドウ内の実行ボタンデータ範囲を選択をクリックして VBA コードを実行すると、引用符を追加するセルを選択するダイアログが表示されます。
データ範囲を選択

5。OKをクリックすると、選択したセル内のテキストの前後に引用符が追加されます。


15。数式の結果に直接テキストの追加を追加

他のユーザーがデータをよりよく理解できるようにするため、下のスクリーンショットのように数式の結果にテキストの追加を含める必要がある場合があります。数式内にテキストを含めるには、テキストを二重引用符で囲み、&演算子でテキストと数式を結合します。
数式の結果にテキストを追加

ケース1 数式の前にテキストの追加を追加

「Today is 」&TEXT(TODAY(),「dddd, mmmm dd.」)
数式の前にテキストを追加する数式

ケース2 数式の後にテキストの追加を追加する場合

TEXT(NOW(),「HH:MM:SS」)&「 is the current time.」
数式の後にテキストを追加する数式

ケース3 数式の両側にテキストの追加を追加

「Today sold 」&data&「 kg.」
数式の両側にテキストを追加する数式


その他のExcel チュートリアル:

複数のブック/ワークシートを1 つに統合する
このチュートリアルでは、あなたが遭遇する可能性のあるほぼすべての統合シナリオを網羅し、それぞれに最適なプロフェッショナルな解決策をご提供します。

テキスト・数値・日付のセルを分割する(複数列に分ける)
このチュートリアルは、テキストセル、数値セル、日付セルの分割方法をそれぞれ解説した3 つのパートで構成されています。各パートでは実際の例をもとに、同じ課題に直面した際にスムーズにセルを分割できるよう、わかりやすく解説しています。

Excel で複数セルの内容をデータを失うことなく結合する
このチュートリアルでは、セル内の特定の位置からテキストや数値を抽出する方法に焦点を当て、Excel で目的の情報を正確に取得するためのさまざまなテクニックをご紹介します。

Excel で2 つの列を比較して一致と相違を確認する
この記事では、2 つの列を比較する際に考えられるほぼすべてのシナリオを網羅しています。ぜひご活用ください!


  • スーパー数式バー(複数行のテキストや数式を簡単に編集可能);リーディングレイアウト(多数のセルを簡単に読み書き可能);フィルタリング範囲に貼り付け
  • 結合セル/行/列とデータ保持;セルの分割コンテンツ;重複行を結合して合計/平均を計算…重複の入力を防止セル;範囲を比較
  • 重複または一意の行を選択空白行を選択(すべてのセルが空);スーパー検索とあいまい検索多数のワークブック内で実行;ランダム選択…
  • 正確にコピー複数セルを数式参照を変更せずに移動;複数シートへの参照を自動作成箇条書きの挿入、チェックボックスなど…
  • お気に入りの数式を保存して素早く挿入、範囲、チャート、画像;セルの暗号化パスワード付きで保護;メーリングリストの作成メール送信など…
  • テキストの抽出、テキストの追加、特定の位置の文字を削除、スペースを削除;データページ統計を作成・印刷;セルの内容とコメントを相互変換
  • スーパーフィルター(フィルタースキームを保存し、他のシートに適用可能);高度なソート月/週/日、頻度などでグループ化;特殊フィルタ太字、イタリック体などで強調表示…
  • ワークブックとワークシートを統合;テーブルのマージをキーカラムに基づいてマージ;データの分割を複数のシートに分割xls、xlsx、PDF を一括変換
  • PivotTable を以下でグループ化:週番号、曜日など…ロック解除済みセルと選択範囲をロックを異なる色で表示;数式/名前を持つセルをハイライト表示
kte tab 201905
  • Word、Excel、PowerPoint でタブを使った編集と閲覧を有効化。Publisher、Access、Visio、Project でもご利用いただけます。
  • 複数のドキュメントを、新しいウィンドウではなく、同じウィンドウ内の新しいタブで開いたり作成したりできます。
  • 生産性が50%向上し、毎日数百回のマウスクリックを削減できます!
officetab bottom