Excelでセルの指定された位置にテキストと数字を追加
Excelでは、セルにテキストや数字を追加することは非常に一般的な作業です。例えば、名前の間にスペースを追加する、セルに接頭辞や接尾辞を追加する、社会保障番号にダッシュを追加するなどがあります。このチュートリアルでは、Excelでのほぼすべての追加シナリオをリストアップし、それぞれに対応する方法を提供します。
このチュートリアルのナビゲーション |
注釈
このチュートリアルでは、いくつかの例を作成して方法を説明します。以下のVBAコードや数式を使用する際には、必要に応じて参照を変更できます。また、サンプルをダウンロードして直接試すこともできます。
この部分では、以下のスクリーンショットに示すように、各セルの先頭に文字を追加するさまざまな方法を紹介します。
ここでは、以下の3つの数式から1つを選択できます:
数式1 連結演算子 "&"
アンパサンド文字 "&" で複数のテキストを結合します。
"テキスト"&セル
数式2 CONCATENATE 関数
CONCATENATE関数は、テキストを結合するために使用されます。
CONCATENATE("テキスト",セル)
数式3 CONCAT関数
これは、Excel 2019、Office 365、およびExcelオンラインにのみ表示される新しい機能です。
CONCAT("テキスト",セル)
一般的な数式では: cell はプレフィックスを追加したいテキストのセル参照であり、text はセルに追加するためのテキストです。
上記の例を使用すると、数式バーの数式を次のように使用できます。
"&"
=$E$3&B3 または ="Iphone"&B3
CONCATENATE 関数
=CONCATENATE($E$3,B3) または =CONCATENATE("Iphone",B3)
CONCAT 関数
=CONCAT($E$3,B3) または =CONCAT("Iphone",B3)
押す 入力 結果を得るためのキーを押してから、オートフィルハンドルを下にドラッグして範囲 B3:B6 の各セルにテキストを追加します。
注意: テキストは二重引用符で囲む必要があります。そうでないと、数式がエラー値 #NAME? を返します。セル参照を使用してテキストを指定する場合は、絶対参照を使用することを忘れないでください。F4キーを押すと、相対参照を絶対参照に変更できます。 |
Excel 2013以降のバージョンを使用している場合、強力な新機能であるフラッシュフィルは、入力した上記のセルに基づいて自動的にセルを埋めることができます。
元のデータの隣のセルを選択し、以下の例のようにプレフィックステキストを含む最初のデータを手動で入力します:
次に、下のセルでプレフィックステキストを含む2番目のデータの入力を続けます。入力中に灰色のリストが表示されるので、押してください。 入力 データを自動的に埋めるためのフラッシュフィルを許可するキー。
プレビュー一覧が生成されない場合は、[ホーム] タブに移動して、[フィル] > [フラッシュフィル] をクリックし、手動で実行してください。
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" が追加されました。
セルの先頭にテキストを追加する以外に、セルの末尾にテキストを追加することも一般的です。ここでは、各セルの末尾に単位を追加する例を、以下のスクリーンショットのように取り上げます。
ここでは、以下の3つの数式から1つを選択できます:
数式1 連結演算子 "&"
アンパサンド文字 "&" で複数のテキストを結合します。
セル&"テキスト"
数式2 CONCATENATE 関数
CONCATENATE関数は、テキストを結合するために使用されます。
CONCATENATE(セル,"テキスト")
数式3 CONCAT関数
これは、Excel 2019、Office 365、およびExcelオンラインにのみ表示される新しい機能です。
CONCAT(セル,"テキスト")
汎用的な数式において:cell は接尾辞を追加したいテキストのセル参照であり、text はセルに追加するためのテキストです。
上記の例を使用すると、数式バーで次のように数式を使用できます。
"&"
=B3&$E$3 または =B3&"Kg"
CONCATENATE 関数
=CONCATENATE(B3, $E$3) または =CONCATENATE(B3, "Kg")
CONCAT 関数
=CONCAT(B3, $E$3) または =CONCAT(B3, "Kg")
押す 入力 結果を得るためのキーを押してから、オートフィルハンドルを下にドラッグして、範囲 B3:B6 の各セルの末尾にテキストを追加します。
注意: テキストは二重引用符で囲む必要があります。そうでないと、数式はエラー値 #NAME? を返します。セル参照を使用してテキストを指定する場合は、絶対参照を使用することを忘れないでください。相対参照を絶対参照に変更するには、F4キーを押すことができます。 |
Excel 2013以降のバージョンを使用している場合、強力な新機能であるフラッシュフィルは、入力した上記のセルに基づいて自動的にセルを埋めることができます。
元のデータの隣のセルを選択し、下記のように接尾辞のテキストを含めて最初のデータを手動で入力します。
次に、最初の結果の下のセルをアクティブ化し、クリックします。 データ > フラッシュフィルアクティブなセルを含む以下のすべてのセルが自動的に入力されます。
ここに、範囲内の各セルの末尾にテキストを追加できる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」というテキストが追加されました。
ほとんどの場合、セルの先頭や末尾にテキストを追加するのは簡単ですが、セルの中間にテキストを追加するのは少し難しいかもしれません。例えば、以下のスクリーンショットのように、範囲 B3:B7 の各セルの 2 番目の文字の後にコロン : のような区切り文字を追加するとします。
ここでは、この作業を処理するために4つの数式を提供しています。使用するものを1つ選んでください:
数式1 LEFT関数とRIGHT関数を組み合わせる
LEFT(セル, n) & "テキスト" & RIGHT(セル, LEN(セル) -n)
数式2 COMBINE CONCATENATE(CONCAT)、RIGHT、LEN関数を組み合わせる
CONCATENATE(LEFT(セル, n), "テキスト", RIGHT(セル, LEN(セル) -n))
または
CONCAT(LEFT(セル, n), "テキスト", RIGHT(セル, LEN(セル) -n))
数式3 置換関数
REPLACE(セル, n+1, 0, "テキスト")
汎用的な数式において:cell は、テキストを中央に追加したいセルの参照であり、text はそのセルに追加するテキスト、n はテキスト文字列の中でどの文字の後にテキストを追加するかを定義する数値です。
上記の問題を解決するには、次の数式を使用してください:
LEFT関数とRIGHT関数を組み合わせる
=LEFT(B3, 2) & ":" & RIGHT(B3, LEN(B3) -2) または =LEFT(B3, 2) & $E$3 & RIGHT(B3, LEN(B3) -2)
COMBINE、CONCATENATE(CONCAT)、RIGHT、LEN関数を組み合わせる
=CONCATENATE(LEFT(B3, 2), ":", RIGHT(B3, LEN(B3) -2)) または =CONCAT (LEFT(B3, 2), ":", RIGHT(B3, LEN(B3) -2))
置換機能
=置換(B3, 2+1, 0, ":") または =置換(B3, 2+1, 0, $E$3)
押す 入力 結果を得るためのキーを押してから、範囲 B3:B7 の各セルの 2 番目の文字の後にテキストを追加するためにオートフィルハンドルを下にドラッグします。
注意:テキストは二重引用符で囲む必要があります。そうしないと、数式がエラー値 #NAME? を返します。セル参照を使用してテキストを指定する場合は、絶対参照を使用することを忘れないでください。相対参照を絶対参照に変更するには、F4キーを押すことができます。 |
Excel 2013以降のバージョンを使用している場合、 フラッシュフィルは、入力した上記のセルに基づいて自動的にセルを埋めることができます。
元のデータの隣のセルを選択し、下記のように2文字目以降にコロンを入力した最初のデータを手動で入力してください。
次に、最初の結果の下のセルをアクティブ化し、押してください。 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 はテキストを追加したい位置を定義する数値であり、: は追加したいテキストを表し、3 は 2 と追加するテキストの長さの合計です。別の例として、文字列 "A B" の最初の文字の後に "and" を追加する場合、スクリプトは Rng.Value = VBA.Left(Rng.Value, 1) & "and" & VBA.Mid(Rng.Value, 4, VBA.Len(Rng.Value) - 1) となります。 |
4. 押す F5 キーまたはクリック 実行 ボタン ウィンドウ内でVBAコードをアクティブ化します。セルを選択してテキストを追加するためのダイアログが表示されます。
5. クリック OKこれで、範囲 B19:B23 内の各セルの2文字目に「:」が追加されました。
もし数式やVBAに疲れてしまったら、強力で便利なツールを試してみてください。 Kutools for Excel、それはあなたを支援することができますその テキストの追加 機能。
このテキスト追加機能は以下のように使用できます:
- 最初の文字の前にテキストを追加
- 最後の文字の後にテキストを追加
- 指定された位置にテキストを追加
- 拡張機能
大文字の前にテキストを追加
小文字の前にテキストを追加
大文字と小文字の前にテキストを追加
数字の前にテキストを追加
テキストを追加したいセルを選択し、[テキストの追加]をクリックして適用します。 Kutools > テキスト > テキストの追加.
4.1 最初の文字の前または最後の文字の後にテキストを追加
において テキストの追加 ダイアログで、セルに追加したいテキストを入力します テキスト テキストボックス、次に確認 最初の文字の前 に 位置 セクション。
クリック 適用 または OK 追加を完了します。
最後の文字の後にテキストを追加するには、セルに追加したいテキストを入力してください テキスト テキストボックス、次に確認 最後の文字の後 に 位置 セクション。
クリック 適用 または OK 追加を完了します。
場合によっては、セルの中央にテキストを追加したり、セル内の複数の位置にテキストを追加したいことがあるかもしれません。以下のスクリーンショットのように、社会保障番号の3桁目と7桁目の後に区切り文字「-」を追加するとします。
にて テキストの追加 ダイアログで、テキストを入力します テキスト テキストボックス、および確認 指定する オプションを選択後、テキストボックスにコンマで区切って位置を入力し、クリックしてください。 OK または 適用.
通常の位置(先頭、末尾、指定された位置)にテキストを追加するほかに、テキストの追加機能はテキストの挿入もサポートしています。
- 大文字の前
- 小文字の前
- 大文字と小文字の前
- 数字の前
において テキストの追加 ダイアログで、テキストを入力します テキスト テキストボックス、および確認 高度 オプションを選択し、必要に応じて下のドロップダウンメニューをクリックして操作を選んでください。
テキストの追加機能以外にも、Kutools for ExcelにはExcelでのさまざまな作業を支援する300以上の便利な機能が搭載されています。今すぐ無料ダウンロードしてください。
この部分では、Excelで最初に出現する特定のテキストの前または後にテキストを追加するための数式を提供します。
例えば、下のスクリーンショットに示すように、セル内の最初のテキスト「price」の前にテキスト「(sale)」を追加したいとします。
Excelでは、REPLACE関数とSUBSTITUTE関数を使用してこの作業を解決できます。
置換関数
REPLACE(セル,FIND("find_text",セル),0,"add_text")
置換関数
SUBSTITUTE(セル,"find_text","replace_text",1)
この場合、上記の数式を次のように使用してください。
=REPLACE(B4,FIND("price",B4),0,"(sale)")
または
=SUBSTITUTE(B4,"price","(sale)price",1)
この場合の数式の引数は次のとおりです。
セル: B4,
検索テキスト: 価格,
テキストの追加: (sale),
置換テキスト: (セール)価格。
押す 入力 最初の加算結果を得るためのキーを押してから、この数式が必要なセル上にオートフィルハンドルをドラッグします。
例えば、下のスクリーンショットに示すように、セル内の最初のコロン ":" の後に通貨記号 "$" を追加したいとします。
Excelでは、REPLACE関数とSUBSTITUTE関数を使用してこの作業を解決できます。
置換機能
REPLACE(セル,FIND("検索テキスト",セル),検索テキストの長さ,"置換テキスト")
SUBSTITUTE関数
SUBSTITUTE(セル, "検索テキスト", "置換テキスト")
この場合、上記の数式を次のように使用してください。
=REPLACE(B12,FIND(":",B12),1,":$")
または
=SUBSTITUTE(B12,":",":$")
この場合の数式の引数は次のとおりです。
セル: B12,
検索テキスト: :,
テキストを置換::$.
テキスト長を検索:1
押す 入力 最初の加算結果を得るためのキーを押してから、この数式が必要なセル上にオートフィルハンドルをドラッグします。
このチュートリアルのパートでは、セル内の各単語の前または後に文字を追加するための3つの異なる方法(数式、検索と置換、VBA)を紹介します。
各単語の前に文字を追加する |
![]() |
各単語の後に文字を追加 |
![]() |
このタスクを解決するために SUBSTITUTE 関数を使用することができます。一般的な数式は次のとおりです。
各単語の前に追加
"文字"&SUBSTITUTE(文字列, " "," 文字")
各単語の後に追加
SUBSTITUTE(文字列," ","文字 ")&"文字"
B3:B6のリスト内のすべての単語の前に「+」を追加すると仮定した場合、次の数式を使用してください。
="+"&SUBSTITUTE(B3, " "," +")
押す 入力 最初の結果を得るためのキーを押してから、オートフィルハンドルを下にドラッグしてすべての結果を取得します。
リスト B11:B14 の各単語の後に ($) を追加すると仮定します。以下の数式を使用してください。
=SUBSTITUTE(B11," ","($) ")&"($)"
押す 入力 最初の結果を得るためのキーを押してから、オートフィルハンドルを下にドラッグしてすべての結果を取得します。
6.2 各単語の前または後に文字を追加する(検索と置換を使用)
最初の単語を除いて各単語の前に文字を追加したり、最後の単語を除いて各単語の後に文字を追加したい場合(下のスクリーンショットを参照)、Excelの組み込み機能である「 検索と置換」を使用してこの作業を処理できます。
最初の単語を除き、各単語の前に追加
最後の単語を除いて、各単語の後に追加
1. 各単語の前または後に文字を追加したいセルを選択し、Ctrl + H キーを押して「検索と置換」ダイアログを有効にします。
2. 「検索内容」のテキストボックスにスペースを入力し、次に「置換内容」のテキストボックスに新しい文字とスペースを入力して、最後に「すべて置換」ボタンをクリックします。
計算 | 一般 | 例 |
各単語の前に文字を追加 | スペースの後に新しい文字を追加 | 各単語の前に (セール) を追加 |
計算 | 一般 | 例 |
各単語の後に文字を追加 | スペースの後に続く新しい文字 | 各単語の後に - を追加 |
ここでは、各単語の前または後に文字を追加するための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.
その後、文字は各単語の先頭または末尾に追加されます。
時々、すべての文字の間にテキストを追加したい場合があります。この部分では、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は、文字間にスペースを追加したい文字列が含まれているセルです。
5. 押す 入力 結果を得るためのキーとして、必要に応じて他の結果を得るためにオートフィルハンドルをセル上にドラッグします。
注意: 1) VBAコードでは、必要に応じて " " を他のテキストに変更できます。例えば、文字の間に - を追加するために "-" に変更します。 2)このコードはすべての文字の後に新しいテキストを追加します。必要ない場合は、下記の数式を使用して最後に追加されたテキストを削除できます。数式についての詳細は、こちらをご覧ください: Excelでセルまたは文字列から最初または最後のN文字を削除する方法は? LEFT(セル,LEN(セル)-text_length) |
数値である文字列の各数字の間にスペースを追加したい場合は、TEXT関数を使用できます。
注意:スペースを追加したい範囲の数字は、同じ長さである必要があります。そうでない場合、結果が正しくならない可能性があります。 |
B10:B12の範囲に8桁の数字のリストがあると仮定します。結果を配置するセルを選択し、以下の数式を入力してください:
=TEXT(B10,"# # # # # # # #")
押す 入力 キーを押しながら、他のセル上にオートフィルハンドルをドラッグします。
数字の長さが5の場合、数式は =TEXT(B10,"# # # # #") に変更されます。
各単語の間に文字を追加したい場合、例えば下のスクリーンショットのように名前、ミドルネーム、姓の間にスペースを追加するには、ユーザー定義関数を使用できます。
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. 押す 入力 結果を得るためのキーとして、必要に応じて他の結果を得るためにオートフィルハンドルをセル上にドラッグします。
注意:VBAコードでは、必要に応じて " " を他のテキストに変更できます。例えば、単語の間に - を追加するために "-" に変更します。 |
以下のスクリーンショットに示すように、テキストと数字の間に特定の文字を追加するには、ここでは2つの方法を提供します。
テキストが数字の前にある場合、一般的な数式は次のとおりです。
TRIM(REPLACE(文字列,MIN(FIND({1,2,3,4,5,6,7,8,9,0},文字列&"1234567890")),0,"-"))
上記のケースを例として、次の数式を使用してください:
=TRIM(REPLACE(B4,MIN(FIND({1,2,3,4,5,6,7,8,9,0},B4&"1234567890")),0,"-"))
押す 入力 最初の結果を得るためのキーを押してから、この数式を入力するために他のセル上にオートフィルハンドルをドラッグします。
数字がテキストの前にある場合、一般的な数式は次のとおりです。
LEFT(文字列,SUM(LEN(文字列)-LEN(SUBSTITUTE(文字列,{0,1,2,3,4,5,6,7,8,9},""))))&"."&RIGHT(文字列,LEN(B13)- SUM(LEN(文字列)-LEN(SUBSTITUTE(文字列, {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}, ""))))
押す 入力 最初の結果を得るためのキーを押してから、この数式を入力するために他のセル上にオートフィルハンドルをドラッグします。
9.2 フラッシュフィルを使用してテキストと数字の間に文字を追加する
Excel 2013以降のバージョンを使用している場合、 フラッシュフィル機能もテキストと数字の間に文字を追加するのに役立ちます。
元のデータの隣に、テキストと数字の間に文字が追加された新しいデータを入力します。その後、Enterキーを押して最初の結果の次のセルに移動します。
そして押してください Ctrl + E フラッシュフィルを有効にするキー。
拡張機能
このチュートリアルでは、日常生活や仕事の中で遭遇する可能性のあるテキストの追加に関するいくつかのシナリオも紹介しています。
時々、以下のスクリーンショットに示すように、電話番号や社会保障番号の連続にダッシュなどの区切り文字を追加する必要があります。数百もの番号に手動で入力するのは大変です。この部分では、この作業を迅速に処理するための3つの便利な方法を紹介します。
ここでは、2つの数式を紹介します。これらを使用すると、数値に簡単にダッシュを追加できます。セル B3 の3番目と6番目の数字の後にダッシュを追加するには、次の数式を使用してください。
置換関数
=置換(置換(B3,4,0,"-"),8,0,"-")
TEXT関数
=TEXT(B3,"???-???-??? ")
押す 入力 最初の結果を得るためのキーを押してから、他のセル上にオートフィルハンドルをドラッグします。
注意: 上記の数式の引数を必要に応じて変更できます。例えば、2桁目、4桁目、6桁目の後に「-」を追加する場合、次の数式を使用できます。 =置換(置換(置換(B3,3,0,"-"),6,0,"-"),9,0,"-") =TEXT(B3,"??-??-??-??? ") |
元のセル内の数字に直接ダッシュを追加するには、[ セルの書式設定] 機能を使用できます。
1. ダッシュを追加したい数字を選択し、Ctrl + 1 キーを押して「セルの書式設定」ダイアログを開きます。
2. 「セルの書式設定」ダイアログで、「数値」タブの下にある「カテゴリ」セクションから「カスタム」を選択します。
3. 次に、右側で タイプ セクション、タイプ ###-###-### テキストボックスに、クリックして OK.
選択された番号にダッシュが追加されました。
10.3 Kutools for Excelの「テキストの追加」機能を使用して電話番号にダッシュを追加
Excelに Kutools for Excelがインストールされている場合、テキストの追加機能もお手伝いできます。
1. ダッシュを追加する必要がある数字が含まれているセルを選択し、クリックします。 Kutools > テキスト > テキストを追加します。
2. で テキストの追加 ダイアログで、ダッシュまたはその他の区切り文字を入力します テキスト テキストボックス、選択 指定 オプションを選択後、ダッシュを追加したい位置を下のテキストボックスにカンマで区切って入力してください。
3. 「OK」または「適用」をクリックします。その後、選択された数字にダッシュが追加されます。
異なる長さの数字のリストがあり、それらを同じ長さにして整然と見せるために先頭にゼロを追加したいとします(以下のスクリーンショットを参照)。ここでは、この作業を処理するための2つの方法をご紹介します。
「セルの書式設定」機能を使用して、先頭にゼロを追加することでセルの長さを固定するカスタム形式を設定できます。
1. 先頭に0を追加したいセルを選択し、Ctrl + 1キーを押して「セルの書式設定」ダイアログを開きます。
2. 「セルの書式設定」ダイアログで、「数値」タブの下にある「カテゴリ」セクションから「カスタム」を選択します。
3. 次に、右側で タイプ セクション、タイプ 0000 テキストボックスに(桁数を4桁に固定するには、0000と入力してください。他の桁数、例えば5桁に変更することもできます。その場合は00000と入力してください)、クリック OK.
そして、数字には先頭にゼロが追加され、同じ長さになりました。
注意:元データの長さが設定された長さを超える場合、先頭にゼロを付けずに元のデータが表示されます。 |
元のデータを変更したくない場合は、他の場所にある数値に先頭のゼロを追加するために数式を使用できます。
ここでは、3つの機能があなたを助けることができます。
数式1 TEXT関数
TEXT(数値,"00…")
数式2 RIGHT関数
RIGHT("00…"&数値,長さ)
Formula3 BASE 関数
BASE(数値,10,長さ)
数式内のゼロの数は、数字の長さと等しいです。
ここで4桁を数字の長さとして設定してください。以下の数式を使用してください。
=TEXT(B10,"0000")
=RIGHT("0000"&B10,4)
=BASE(B10,10,4)
押す 入力 キーを押しながらドラッグしてオートフィルハンドルを下に移動します。
注意:元データの長さが設定された長さを超える場合、先頭にゼロを付けずに元データが表示されます。 |
数字に固定長さを持たせるために末尾にゼロを追加したい場合、例えばセル B3:B7 の数字に末尾のゼロを追加して5桁の長さにするには、以下のスクリーンショットのように、その作業を行うために数式を適用することができます。
REPT関数
数値&REPT("0",長さ-LEN(数値))
数式において、引数 "number" は末尾にゼロを追加したい数値またはセル参照を表し、引数 "length" は希望する固定の長さです。
このように数式を使用してください:
=B3&REPT("0",5-LEN(B3))
押す 入力 キーを押しながらオートフィルハンドルをドラッグして、この数式が必要なセルまで移動します。
ワークシートからデータをエクスポートまたはコピーしてメモ帳に貼り付ける場合、セルの値の長さが異なるため、テキストが整頓されずに配置されることがあります。以下のスクリーンショットのように整然と見せるには、末尾にスペースを追加する必要があります。
この作業を解決するために、REPT関数が役に立ちます。
LEFT(テキスト & REPT(" ",最大長),最大長)
数式において、引数「text」は末尾にスペースを追加したいテキストまたはセル参照であり、引数「max_length」はテキストを固定する長さで、使用されているテキストの最大長以上である必要があります。
セル B3:C6 のテキストに末尾のスペースを追加するには、次の数式を使用してください:
=LEFT(B3 & REPT(" ",10),10)
Enterキーを押してから、この数式が必要なすべてのセルにオートフィルハンドルをドラッグします。
この場合、使用されているテキストの最長が9文字であるため、ここでは10を使用します。
時々、以下のスクリーンショットに示すように、セル内のテキストや数字の周りに引用符や括弧を追加する必要があります。一つ一つ手動で入力する以外に、Excelにはこれを迅速に解決できる2つの方法があります。
元のデータ内のテキストの周りに引用符を追加したい場合、Excel の「セルの書式設定」機能が役立ちます。
1. 引用符を追加したいセルを選択し、Ctrl + 1 キーを押して「セルの書式設定」ダイアログを開きます。
2. で セルの書式設定 ダイアログの下に 数値 タブを選択 カスタム リストから カテゴリ、次に右のセクションに移動して入力します。 "''"@"''" に タイプ テキストボックスをクリック OK.
選択したセルのテキストは引用符で囲まれました。
テキストの周りに括弧を追加したい場合は、[セルの書式設定] ダイアログの [タイプ] テキストボックスで (@) を使用します。
数式は、他のセル内のテキストに引用符を追加するためにも使用できます。
& コネクタの使用
""""&text&""""
または
char(34)&text&char(34)
この場合、セル B11 のテキストには、次の数式を使用してください。
=""""&B11&""""
または
=char(34)&B11&char(34)
押す 入力 キーを押しながらオートフィルハンドルをドラッグしてセルを埋めます。
テキストの周りに括弧を追加したい場合、数式として "("&text&")" を使用します。
このジョブを解決するために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」をクリックします。これで、選択したセル内のテキストの周りに引用符が追加されました。
時々、他のユーザーがデータをよりよく理解できるようにするために、以下のスクリーンショットに示すように、数式の結果にテキストを追加する必要がある場合があります。数式にテキストを含めるには、テキストを引用符で囲み、& コネクタを使用してテキストと数式を結合することができます。
ケース1 数式の前にテキストを追加
"今日の日付は "&TEXT(TODAY(),"dddd, mmmm dd.")
ケース2 数式の後にテキストを追加
TEXT(NOW(),"HH:MM:SS")&" は現在の時刻です。"
ケース3 数式の両側にテキストを追加
"本日販売 "&data&" kg。"
その他の Excel チュートリアル: |
複数のワークブック/ワークシートを1つに統合 テキスト、数字、日付のセルを分割(複数列に分離) Excelでデータを失うことなく複数セルの内容を結合する Excelで2つの列を比較して一致と違いを確認する |
最高のOffice生産性ツール
Kutools for Excel は、ほとんどの問題を解決し、生産性を80%向上させます。
- スーパー数式バー(複数行のテキストや数式を簡単に編集可能); 閲覧レイアウト(多数のセルを簡単に読み取り・編集可能); フィルター範囲への貼り付け...
- セル/行/列を結合してデータを保持; セル内容を分割; 重複する行を統合して合計/平均を計算... 重複セルを防止; 範囲を比較...
- 重複または一意の行を選択; 空白行を選択(すべてのセルが空); スーパー検索および多くのワークブックでのあいまい検索; ランダム選択...
- 数式参照を変更せずに複数のセルを正確にコピー; 複数のシートへの自動参照作成; 箇条書き、チェックボックスなどを挿入...
- お気に入りの数式、範囲、グラフ、画像を素早く挿入; パスワードでセルを暗号化; メーリングリストを作成してメールを送信...
- テキストの抽出、テキストの追加、特定の位置の文字を削除、スペースを削除; ページング小計の作成と印刷; セルの内容とコメント間の変換...
- スーパーフィルター(他のシートにフィルタースキームを保存して適用); 月/週/日ごとの高度な並べ替え、頻度など; 太字、斜体による特殊フィルタリング...
- ワークブックとワークシートを統合; 主キーカラムに基づいてテーブルをマージ; データを複数のシートに分割; xls、xlsx、PDFの一括変換...
- ピボットテーブルのグループ化(週番号、曜日など)... ロックされたセルとロックされていないセルを異なる色で表示; 数式/名前を持つセルをハイライト...

- Word、Excel、PowerPoint、Publisher、Access、Visio、Projectでタブ付き編集と閲覧を有効化します。
- 新しいウィンドウではなく、同じウィンドウ内の新しいタブで複数のドキュメントを開き、作成します。
- 生産性を50%向上させ、毎日数百回のマウスクリックを削減します!
