Excel チュートリアル:テキスト、数値、日付のセルを分割する(複数列に分ける方法)
Excel を使用していると、特定の目的のために1 つのセル内のテキストを複数のセルに分割する必要が生じることがあります。本チュートリアルは、「テキストセルの分割」「数値セルの分割」「日付セルの分割」の3 つのパートで構成されており、各パートでは実際の例をもとに、同じ課題に直面した際にどう対処すればよいかをわかりやすく解説します。
目次:[ 非表示 ]
1 テキストセルの分割
このパートでは、テキストセルを複数列に分割する際に起こり得るさまざまな状況をまとめ、それぞれに最適な対処法をご紹介します。
例 #1 セルの分割カンマ、スペース、その他の区切り文字で分割する
カンマ、スペース、ダッシュなどの特定の区切り文字を使ってテキストセルを複数列に分割するには、次のいずれかの方法をご利用ください。
セルの分割 「テキストを列に分割」機能で区切り文字に基づいて分割する
Excel に標準搭載されているテキストを列に分割機能は、セル内のテキストを分割する際に頻繁に活用されます。以下のスクリーンショットのように、カンマ区切りのテキスト文字列を個別のセルに分割するには、「テキストを列に分割」機能を次のように適用します。

1.カンマで分割したい列範囲を選択し、データ > テキストを列に分割をクリックします。

2.「テキストを列に分割ウィザード – ステップ 1/3」ダイアログボックスで、区切り文字付きのラジオボタンを選択し、次へボタンをクリックします。

3.「テキストを列に分割ウィザード – ステップ 2/3」ダイアログボックスで、ニーズに応じて区切り文字を指定してください(この例では)カンマチェックボックスのみをオンにしています)。その後、次へボタンをクリックします。

4.最後のステップのダイアログボックスで、
ボタンをクリックして分割後のテキストを出力するセルを選択し、完了ボタンをクリックしてください。

すると、「範囲を選択してください」内のテキストがカンマで分割され、以下のように異なる列に配置されます。

Excel では、指定した区切り文字を使ってセル内のテキストを分割するために、以下の数式を活用できます。
汎用的な数式
=TRIM(MID(SUBSTITUTE(A1,delim,REPT(「 」,LEN(A1))),(N-1)*LEN(A1)+1,LEN(A1)))
引数
それでは、この数式を実際に適用してみましょう。
1.以下のスクリーンショットのように、まず補助行を作成し、異なるセルに「1、2、3…」と番号を入力します。
注ここで「1、2、3…」は、テキスト文字列の第1、第2、第3 の部分文字列を表します。

2.番号1 のセルの下にあるセルを選択し、以下の数式をコピーまたは入力して、Enterキーを押すと、テキスト文字列の最初の部分文字列が取得されます。その後、結果セルを選択し、そのオートフィルハンドルを右および下方向にドラッグして、他の部分文字列を取得してください。スクリーンショットをご参照ください:
=TRIM(MID(SUBSTITUTE($B5,",",REPT(「 」,LEN($B5))),(D$4-1)*LEN($B5)+1,LEN($B5)))

注:数式中の「,」は、B5 セル内のテキスト文字列を分割する区切り文字です。必要に応じて変更可能です。
ここでは、Kutools for Excelのセルの分割Excel の機能を使えば、特定の区切り文字に基づいてセルの内容を簡単に個別の列や行に分割できます。ぜひお試しください!
1.Kutools for Excelをインストール後、テキスト文字列を分割したい範囲を選択し、Kutools>結合と分割>セルの分割をクリックします。

2.セルの分割ダイアログボックスで、以下のとおり設定してください。

3.次のセルの分割ダイアログボックスで、部分文字列を出力するセルを選択し、OKをクリックします。

すると、上記ステップ2 で指定した設定に基づき、部分文字列が異なる列や行に分割されます。
列に分割:

行に分割:

例 #2 セルの分割指定した文字数で分割する
テキスト文字列を指定した文字数で分割するには、以下の方法がおすすめです。
セルの分割 「テキストを列に分割」機能で指定した文字数に基づいて分割する
テキストを列に分割機能には、固定幅オプションがあり、選択したセル内のテキストを指定した文字数で簡単に分割できます。
以下のスクリーンショットのように、B5:B9 のテキストを3 文字ごとに列に分割するには、次の手順で操作してください。

1.分割したいテキスト文字列が入力されているセルを選択します。
2.データ>テキストを列に分割をクリックします。
3.「テキストを列に分割ウィザード – ステップ 1/3」ダイアログボックスで、固定幅のラジオボタンを選択し、「次へ」をクリックしてください。

4.次にステップ 2/3ダイアログボックスが表示されます。データプレビューセクションで、軸上の希望位置をクリックして区切り線(矢印付きの線)を作成します。すべての区切り線を作成したら、次へボタンをクリックして次に進みます。
この例では、テキスト文字列を3 文字ごとに区切って区切り線を挿入しています。

5.最後のステップのウィザードで、分割後のテキストを出力するセルを選択し、完了ボタンをクリックしてください。

これで、選択したセル内のテキスト文字列が3 文字ごとに次のように分割されました。

Excel でセルの内容を指定した文字数で分割したいなら、Kutools for Excelのセルの分割機能を使えば、簡単に実現できます。
1.指定した文字数で分割したいテキストが入力されたセルを選択し、Kutools>結合と分割>セルの分割をクリックします。
2.セルの分割ダイアログボックスで、次のように設定します。

3.次のセルの分割ダイアログボックスで、分割後のテキストを配置するセルを選択し、OKをクリックします。

すると、選択したセル内のテキスト文字列が指定した文字数で分割され、それぞれ別の列に配置されます。
例 #3 セルの分割特定の単語で分割する
以下のスクリーンショットに示すように、B5:B9 の範囲にあるテキスト文字列を「sales」という単語全体で分割するには、このセクションでご提供する数式をご利用ください。

セル内の特定の単語より前の部分文字列を取得する
LEFT 関数と FIND 関数を組み合わせた数式を使うと、テキスト文字列内で特定の単語より前の部分を簡単に抽出できます。
汎用的な数式
=LEFT(A1,FIND(「certain_word」, A1)-1)
引数
1。空白セルを選択し、以下の数式をコピーまたは入力してください。Enterキーを押すと、指定した単語より前の部分文字列を取得できます。この結果セルを選択し、そのオートフィルハンドルを下にドラッグして、他のセルにも数式を適用しましょう。
=LEFT(B5,FIND(「sales」,B5)-1)

セル内の単語より後の部分文字列を取得する
単語より前の部分文字列を取得した後、下記の数式を適用して、その後の部分文字列を取得する必要があります。
汎用的な数式
=TRIM(MID(A1,SEARCH(「certain_word」,A1)+LEN(「certain_word」),255))
引数
1。最初の結果セル(D5)の隣にある空白セルを選択してください。
2。以下の数式をコピーまたは入力して、Enterキーを押した後、結果セルを選択し、そのオートフィルハンドルを下にドラッグして、他の結果を取得します。
=TRIM(MID(B5,SEARCH(「sales」,B5)+LEN(「sales」),255))

これで、テキスト文字列を特定の単語を基準に異なる列に分割できました。
例 #4 セルの分割改行で
このセクションでは、Excel で改行を基準にテキストセルを分割するさまざまな方法をご紹介します。

「テキストを列に分ける」機能を使えば、Excel でセル内の改行に基づいて簡単に分割できます。以下の手順に従って操作してください。
1。改行でテキストを分割したいセルの範囲を選択します。
2。データ>テキストを列に分けるをクリックします。
3。「テキストを列に分けるウィザード – ステップ 1/3」ダイアログボックスで、区切り文字付きのラジオボタンを選択し、「次へ」をクリックしてください。

4。ステップ 2/3ダイアログボックスで、既存の区切り文字のチェックをすべて外し、その他チェックボックスをオンにしてから、Ctrl+Jショートカットキーを押してください。すると、テキストボックス内に小さなドットが表示され、データのプレビューボックスでテキストが改行で分割されていることを確認できます。「次へ」ボタンをクリックしてください。

5。ウィザードの最後のステップで、分割後のテキストを出力するセルを選択し、「完了」ボタンをクリックしてください。

すると、選択したセル内のテキストが改行で異なる列に分割されます。
次の数式も、Excel で改行に基づいてセルの分割のに役立ちます。
上記と同じ例を使用すると、分割後には3 つの部分文字列がそれぞれ異なる列に表示されます。
最初の改行より前の部分文字列を取得する
まず、セル内の最初の改行より前の部分文字列を抽出するために、LEFT 関数とSEARCH 関数を組み合わせた数式を使用できます。
汎用的な数式
=LEFT(cell, SEARCH(CHAR(10),cell,1)-1)
引数
1。空白セル(この例では D5)を選択し、以下の数式をコピーまたは入力してください。Enterキーを押した後、結果が表示されたセルを選択し、そのオートフィルハンドル下にドラッグすると、他のセルの最初の改行より前の部分文字列を取得できます。
=LEFT(B5, SEARCH(CHAR(10),B5,1)-1)

最初と2 番目の改行の間の部分文字列を取得する
セル内の最初の改行と2 番目の改行の間に挟まれた部分文字列を取得するには、次の数式が役立ちます。
汎用的な数式
=MID(cell,SEARCH(CHAR(10),cell)+1,SEARCH(CHAR(10),cell,SEARCH(CHAR(10),cell)+1)-SEARCH(CHAR(10),cell)-1)
引数
1。D5 の隣のセル(E5)を選択し、下記の数式をコピーまたは入力して、Enterキーを押します。結果セルを選択し、そのオートフィルハンドルを下にドラッグして、他のセルの最初と2 番目の改行の間の部分文字列を取得します。
=MID(B5, SEARCH(CHAR(10),B5) + 1, SEARCH(CHAR(10),B5,SEARCH(CHAR(10),B5)+1) - SEARCH(CHAR(10),B5) - 1)

2 番目の改行より後の部分文字列を取得する
まず、下記の数式を使って、2 番目の改行以降の部分文字列を取得します。
汎用的な数式
=RIGHT(cell,LEN(cell) - SEARCH(CHAR(10),cell, SEARCH(CHAR(10), cell) + 1))
引数
1。セル(この例では F5)を選択し、以下の数式をコピーまたは入力してください。Enterキーを押した後、結果が表示されたセルを選択し、オートフィルハンドルを下にドラッグすると、他のセルの2 番目の改行以降の部分文字列を取得できます。
=RIGHT(B5,LEN(B5) - SEARCH(CHAR(10), B5, SEARCH(CHAR(10), B5) + 1))

このセクションでは、Excel で選択したセル内のテキストを改行で簡単に分割できる VBA コードをご紹介します。
1。Alt+F11キーを押すと、Microsoft Visual Basic for Applicationsウィンドウが開きます。
2。Microsoft Visual Basic for Applicationsウィンドウで、挿入 > モジュールをクリックし、表示されたコードウィンドウに以下の VBA コードをコピーしてください。
VBA コード: Excel で改行に基づいてセルの分割
Sub ExtendOffice_SplitRangeTex()
'Updated by Extendoffice 20211116
Dim xStr() As String
Dim xRg As Range
Dim xCell As Range
Dim xI As Integer
Set xRg = Application.InputBox("Please select the range of cells where you want to split by line break:", "Kutools for Excel", "", , , , , 8)
If xRg Is Nothing Then Exit Sub
For xI = 1 To xRg.Count
Set xCell = xRg.Item(xI)
xStr = VBA.Split(xCell.Value, vbLf)
xCell.Resize(1, UBound(xStr) + 1).Offset(0, 1) = xStr
Next
End Sub 
3。F5キーを押してコードを実行します。すると、Kutools for Excelダイアログボックスが表示されるので、改行で分割したいセル範囲を選択し、「OK」ボタンをクリックします。

すると、選択したセル内のテキストが改行ごとに自動的に異なる列に分割されます。

ここでは、便利なツールであるセルの分割のKutools for Excelユーティリティを紹介します。このツールを使えば、数回クリックするだけで選択したセル内のテキストを一括で改行で分割できます。
1。改行でテキストを分割したいセル範囲を選択します。
2。Kutools > 結合と分割 > セルの分割をクリックして、機能を有効にしてください。
3。セルの分割ダイアログボックスで、以下の設定を完了してください。

4。次に表示されるセルの分割ダイアログボックスで、分割後のテキストを配置する空のセルを選択し、「OK」をクリックします。

すると、選択したセル内のテキストが、以下のスクリーンショットのように改行ごとに異なる列に分割されます。

Kutools for Excel— 300 以上の必須ツールでExcel を強化し、作業をより迅速・簡単に。AI 機能を活用して、スマートなデータ処理と生産性の飛躍的な向上を実現します。今すぐ入手
例 #5 セルの分割最初または最後の区切り文字のみで
場合によっては、セルの内容を最初または最後の区切り文字のみで2 つの部分に分割したいこともあるでしょう。その際は、以下の数式をお試しください。
下記のスクリーンショットのように、B5:B9 の各セルを最初のスペースで2 つの部分に分割するには、2 つの数式を適用する必要があります。

最初のスペースより前の部分文字列を分割する
最初のスペースより前の部分文字列を分割するには、LEFT 関数と FIND 関数に基づいた数式を使用できます。
汎用的な数式
=LEFT(cell,FIND(「delimiter」,cell)-1)
引数
1。部分文字列を出力するセル(この例では D5)を選択し、以下の数式をコピーまたは入力してください。Enterキーを押した後、結果セルを選択し、そのオートフィルハンドルを下にドラッグして、他のセルにも部分文字列を適用します。
=LEFT(B5,FIND(「 」,B5)-1)

最初のスペースより後の部分文字列を分割する
次に、以下の数式を適用して、セル内の最初のスペース以降の部分文字列を取得します。
汎用的な数式
=RIGHT(cell,LEN(cell)-FIND(「delimiter」,cell))
引数
1。セル E5 に次の数式をコピーまたは入力し、Enterキーを押して結果を表示させます。その後、その結果セルを選択し、オートフィルハンドルを下にドラッグして、他のセルの最後のスペース以降の部分文字列を取得します。
=RIGHT(B5,LEN(B5)-FIND(「 」,B5))

注記数式内では、必要に応じてテキスト文字列や区切り文字のセル参照を変更できます。
スクリーンショットに示すように、セル範囲(B5:B9)内のテキストを最後のスペースで2 つの部分に分割するには、このセクションで提供されている2 つの数式が役立ちます。

最後の区切り文字の左側にあるテキストを取得する
セル内の最後の区切り文字より左側にあるテキストを取得するには、次の数式をご利用いただけます。
汎用的な数式
=LEFT(B5,SEARCH(「^」,SUBSTITUTE(cell,「delimiter」,「^」,LEN(cell)-LEN(SUBSTITUTE(cell,「delimiter」,「」))))-1)
引数
1。左側の部分文字列を配置するセルを選択し、以下の数式をコピーまたは入力してください。Enterキーを押した後、結果セルを選択し、そのオートフィルハンドル下にドラッグして、他のセルにも同じ数式を適用しましょう。
=LEFT(B5,SEARCH(「^」,SUBSTITUTE(B5,「 」,「^」,LEN(B5)-LEN(SUBSTITUTE(B5,「 」,「」))))-1)

最後の区切り文字の右側にあるテキストを取得する
ここでは、最後のスペースの右側にあるテキストを取得する必要があります。
汎用的な数式
=TRIM(RIGHT(SUBSTITUTE(cell,「delimiter」,REPT(「delimiter」,LEN(cell))),LEN(cell)))
引数
1。右側の部分文字列を表示したいセルを選択し、以下の数式をコピーまたは入力してください。Enterキーを押してください。その後、結果が表示されたセルを選択し、オートフィルハンドルを下にドラッグして他のセルにも数式を適用します。
=TRIM(RIGHT(SUBSTITUTE(B5,「 」,REPT(「 」,LEN(B5))),LEN(B5)))

注数式内では、必要に応じてテキスト文字列や区切り文字のセル参照を変更できます。
例 #6 大文字でセルの分割
このセクションでは、セル内の単語を大文字で分割するユーザー定義関数をご紹介します。

1。Alt+F11キーを押して、Microsoft Visual Basic for Applicationsウィンドウを開きます。
2。「Microsoft Visual Basic for Applications」ウィンドウで、挿入>標準モジュールをクリックし、以下の VBA コードをコードウィンドウにコピーしてください。
VBA コード:Excel で大文字でセルの分割
Function GetName(s As String, Num As Long) As String
'Updated by Extendoffice 20211116
With CreateObject("VBSCript.RegExp")
.Global = True
.Pattern = "[A-Z][a-z]+|[A-Z]"
GetName = .Execute(s).Item(Num - 1)
End With
End Function 3。「Alt+Q」キーを押すと、「Microsoft Visual Basic for Applications」ウィンドウが閉じます。
4。最初の大文字の左側にある単語を表示するセル(この例では D5)を選択し、以下の数式を入力してください。Enterキーを押した後、結果が表示されたセルを選択し、オートフィルハンドルを右に、続いて下にドラッグして他の単語を取得します。
=IFERROR(GetName($B5,COLUMNS($D:D)),「」)

注記コード内では、$B5 が分割対象のセル、$D:D が結果を出力する列です。ご使用のデータに合わせて、これらの参照を適宜変更してください。
例 #7 セル内で名前の分割
ワークシートにフルネームが1 列で記載されており、それを個別の列に分割したい場合があります(たとえば、名と姓に分ける、あるいは名・ミドルネーム・姓の3 つに分けるなど)。このセクションでは、こうした課題を解決するための詳しい手順をご紹介します。
以下のスクリーンショットに示すように、名、ミドルネーム、および姓は単一のスペースで区切られています。フルネームから名と姓のみを抽出し、それぞれ別の列に配置するには、以下のいずれかの方法をご利用いただけます。

フルネームを名と姓に分割するには、それぞれ別の数式を適用する必要があります。
名をフルネームから分割する
LEFT 関数と SEARCH 関数を組み合わせた数式を使うと、フルネームから名を簡単に抽出できます。
汎用的な数式
=LEFT(cell, SEARCH(「 」, cell) - 1)
1。名前を出力するセルを選択してください。
2。以下の数式をコピーまたは入力してEnterキーを押します。この結果セルを選択し、そのオートフィルハンドルを下にドラッグして、他のフルネームから名を分割します。
=LEFT(B5, SEARCH(「 」, B5) - 1)

これで、セル範囲内のフルネームからすべての名が分割されました。次に、以下の数式を適用して姓を抽出します。
姓をフルネームから分割する
汎用的な数式
=RIGHT(cell, LEN(cell) - SEARCH(「^」, SUBSTITUTE(cell,「 」, 「^」, LEN(cell) - LEN(SUBSTITUTE(cell, 「 」, 「」)))))
1。名前付きセルの隣にあるセルを選択します。
2。以下の数式をコピーまたは入力して、Enterキーを押してください。その後、その結果セルを選択し、オートフィルハンドルを下にドラッグして、他のフルネームから姓を抽出します。
=RIGHT(B5, LEN(B5) - SEARCH(「^」, SUBSTITUTE(B5,「 」, 「^」, LEN(B5) - LEN(SUBSTITUTE(B5, 「 」, 「」)))))

注記:数式内では、B5 が分割したいフルネームが入力されたセルです。必要に応じて変更してください。
多くのExcel ユーザーにとって、数式は覚えにくいもの。そこでおすすめなのは、名前の分割機能を備えたKutools for Excelです。わずか数回のクリックで、フルネームを名と姓に簡単に分割できます!
1。フルネームが入力されているセルの範囲を選択し、Kutools>結合と分割>名前の分割をクリックします。

2。「名前の分割」ダイアログボックスで、分割タイプセクションの名および姓のチェックボックスのみをオンにしてから、OKをクリックします。
ヒント:選択した範囲は分割範囲ボックスに表示されますので、必要に応じて変更できます。

3。その後、別の名前の分割ダイアログボックスが表示されるので、出力先のセルを選択してOKをクリックしてください。

すると、選択したセル内のフルネームが、以下のスクリーンショットのように一括で名と姓に分割されます。

Kutools for Excel— 300 以上の必須ツールでExcel を強化し、作業をより迅速・簡単に。AI 機能を活用して、スマートなデータ処理と生産性の飛躍的な向上を実現します。今すぐ入手
以下のスクリーンショットのように、名・ミドルネーム・姓がそれぞれ単一のスペースで区切られた「フルネーム」列があります。このフルネームを、名・ミドルネーム・姓の各要素に分割し、別々の列に配置するには、次に示す方法が役立ちます。

1)「テキストを列に分割」機能を使用してフルネームを名・ミドルネーム・姓に分割する
Excel の組み込み機能「テキストを列に分割」を使えば、フルネームを簡単に名・ミドルネーム・姓に分割できます。
上記の手順に従って、「テキストを列に分割」機能をご利用いただけます。
注記:3 ウィザードのステップ2 では、スペースのチェックボックスのみをオンにしてください。
2)数式を使用してフルネームを名・ミドルネーム・姓に分割する
数式を活用すれば、Excel でフルネームを名・ミドルネーム・姓に簡単に分割できます。
フルネームを分割するために使用する汎用的な数式
名を分割する
=LEFT(cell,SEARCH(「 」, cell)-1)
ミドルネームを分割する
=MID(cell, SEARCH(「 」, cell) + 1, SEARCH(「 」, cell, SEARCH(「 」, cell)+1) - SEARCH(「 」, cell)-1)
姓を分割する
=RIGHT(cell,LEN(cell) - SEARCH(「 」,cell, SEARCH(「 」,cell,1)+1))
次に、別のセルで数式を適用し、名・ミドルネーム・姓をそれぞれ取得します。
1。セル D5 に次の数式を入力し、Enterキーを押した後、そのセルを選択してオートフィルハンドルを下にドラッグすれば、他のフルネームも自動で取得できます。
=LEFT(B5,SEARCH(「 」, B5)-1)

2。セル E5 に以下の数式を入力し、Enterキーを押して最初のミドルネームを取得します。結果が表示されたセルを選択し、そのオートフィルハンドルを下方向にドラッグして他のミドルネームを取得します。
=MID(B5, SEARCH(「 」, B5) + 1, SEARCH(「 」, B5, SEARCH(「 」, B5)+1) - SEARCH(「 」, B5)-1)

3。姓を取得するには、セル F5 に以下の数式を入力し、Enterキーを押してください。その後、結果が表示されたセルを選択し、必要なセル範囲までオートフィルハンドルをドラッグします。
=RIGHT(B5,LEN(B5) - SEARCH(「 」,B5, SEARCH(「 」,B5,1)+1))

3)驚異的なツールでフルネームを名・ミドルネーム・姓に分割します
以下はKutools for Excelの名前の分割機能の紹介です。この機能を使えば、わずか数回のクリックでフルネームを名・ミドルネーム・姓に一括で簡単に分割できます!
1。分割したいフルネームが入力されたセルを選択し、次にKutools>結合と分割>名前の分割をクリックします。
2。名前の分割ダイアログボックスで、次のように設定します。

3。次に表示されます名前の分割ダイアログボックスで、分割後のテキストを出力するセルを指定して、OKをクリックしてください。以下のデモをご覧ください。

Kutools for Excel— 300 以上の必須ツールでExcel を強化し、作業をより迅速・簡単に。AI 機能を活用して、スマートなデータ処理と生産性の飛躍的な向上を実現します。今すぐ入手
例#8 セル内のテキストと数字で分割を分割する
以下のスクリーンショットのように、テキストと数字が混在し、さらに区切り文字を含む文字列のリストがある場合、テキストと数字を分割してそれぞれ別の列に配置するための4 つの方法をご紹介します。

次の数式を使えば、1 つのセル内のテキストと数字を、それぞれ別のセルに分割できます。
汎用的な数式
セルからテキストを取得する
=LEFT(cell,MIN(FIND({0,1,2,3,4,5,6,7,8,9},cell&"0123456789"))-1)
セルから数値を取得する
=RIGHT(cell,LEN(B5)-MIN(FIND({0,1,2,3,4,5,6,7,8,9},cell&"0123456789"))+1)
次に、これらの2 つの数式をそれぞれ別のセルに適用し、テキストと数字を分離して取得します。
1。リスト内の最初のテキスト文字列を配置する空白セルを選択し、以下の数式をコピーまたは入力してください。Enterキーを押して結果が表示されたセルを選択し、そのオートフィルハンドルを下方向にドラッグして、リスト内の他のテキスト文字列を取得します。
=LEFT(B5,MIN(FIND({0,1,2,3,4,5,6,7,8,9},B5&"0123456789"))-1)

2。最初の結果セル(D5)の隣にあるセル(E5)を選択し、次の数式をコピーまたは入力してください。Enterキーを押して結果が表示されたセルを選択し、そのオートフィルハンドルを下方向にドラッグすることで、リスト内の他のテキスト文字列に対応する数値を取得できます。
=RIGHT(B5,LEN(B5)-MIN(FIND({0,1,2,3,4,5,6,7,8,9},B5&"0123456789"))+1)

フラッシュフィルでテキストと数字で分割を分割する(Excel 2013 以降)
Excel 2013 以降をご利用の場合、フラッシュフィル機能を使えば、1 つのセル内のテキストと数字を簡単に2 つの列に分割できます。
注フラッシュフィル機能を正しく動作させるには、結果を出力する列を元のテキスト文字列の列の直後に配置してください。たとえば、元のテキストが B 列にある場合、分割後のテキストと数字はそれぞれ C 列と D 列に出力されます。スクリーンショットをご参照ください。

1。セル C5 に、セル D5 のテキストを手動で入力します。
2。セル C6 に、2 番目のテキスト文字列が入力されたセル(D6)の内容を引き続き入力します。

3。セル C7 でデータ>フラッシュフィルをクリックします。

すると、他のテキスト文字列が以下のスクリーンショットのように自動的にセルに入力されます。

4。手順1~3 を繰り返して、D 列に数値を取得します。

注:

リスト内のテキスト文字列が不規則な場合、前述の2 つの方法では、以下のスクリーンショットのように誤った結果が返されることがあります。

ここでは、テキスト文字列内の数値がどこにあろうとも、セル内のテキストと数字をそれぞれ別々の2 つの列に分割できるユーザー定義関数をご紹介します。スクリーンショットをご参照ください:

1。Alt+F11キーを押してください。
2。開きましたMicrosoft Visual Basic for Applicationsウィンドウで、挿入 > 標準モジュールをクリックし、以下の VBA コードをコードウィンドウにコピーしてください。
VBA コード:セル内のテキストと数字で分割を2 つの列に分割する
Public Function SplitText(pWorkRng As Range, pIsNumber As Boolean) As String
'Update by Extendoffice 20211105
Dim xLen As Long
Dim xStr As String
xLen = VBA.Len(pWorkRng.Value)
For i = 1 To xLen
xStr = VBA.Mid(pWorkRng.Value, i, 1)
If ((VBA.IsNumeric(xStr) And pIsNumber) Or (Not (VBA.IsNumeric(xStr)) And Not (pIsNumber))) Then
SplitText = SplitText + xStr
End If
Next
End Function 
3。Alt+Qキーを押すと、Microsoft Visual Basic for Applicationsウィンドウが閉じます。
4。最初のテキスト文字列を出力するセルを選択し、以下の数式を入力してEnterキーを押します。その後、その結果セルを選択し、オートフィルハンドルを下方向にドラッグして、同じリスト内の他のテキスト文字列を取得します。
=SplitText(B5,FALSE)

5。最初のテキスト結果セルの隣にあるセルを選択し、次の数式を入力してください。Enterキーを押して数値を出力します。その後、この結果セルを選択し、オートフィルハンドルを下方向にドラッグして、他のテキスト文字列からも数値を取得しましょう。
=SplitText(B5,TRUE)

ここでは、セル内のテキストと数字を2 つの列に簡単に一括分割する方法をご紹介します。セルの分割機能をKutools for Excelで使えば、わずか数回のクリックでこの問題を簡単に解決できます。
1。テキストと数字に分割したいセルを選択します。
2。Kutools > 結合と分割 > セルの分割をクリックします。
3。セルの分割ダイアログボックスで、以下の設定を行います。
ボタンをクリックして新しい範囲を選択できます;
4。次のセルの分割ダイアログボックスで、分割後のテキストと数字を出力するセルを選択し、OKボタンをクリックしてください。
すると、選択したセル内のテキストと数字が、以下のスクリーンショットのように一度に2 つの列に分割されます。

Kutools for Excel— 300 以上の必須ツールでExcel を強化し、作業をより迅速・簡単に。AI 機能を活用して、スマートなデータ処理と生産性の飛躍的な向上を実現します。今すぐ入手
2。数値セルを分割する
ここでは、数値セルを分割する2 つのケースについて説明します。1 つは複数桁の数値を各桁ごとに分割する方法、もう1 つは小数点を基準に整数部と小数部に分ける方法です。
例#1:セルの分割を桁ごとに分割する
複数桁の数値を個別の桁に分けて、それぞれ異なる列に出力したい場合は、以下のいずれかの方法をお試しください。

次の数式を使えば、数値を各桁に分解して、それぞれ別の列に出力できます。
汎用的な数式
=MID($A1, COLUMNS($A$1:A$1), 1)
引数
1。最初の桁を表示する空白セルを選択し、以下の数式を入力してEnterキーを押してください。
=MID($B3, COLUMNS($B$3:B$3), 1)
2。この結果セルを選択し、オートフィルハンドルを右にドラッグして他の桁を取得します。そのまますべての結果セルを選択した状態で、オートフィルハンドルを下にドラッグすると、他の数値の各桁も簡単に取得できます。

注:この数式では、B3 セルに個別桁に分割する数値が入力されています。必要に応じて変更してください。
次の VBA コードを使えば、Excel でセル内の数値を各桁に簡単に分割できます。以下の手順に従って操作してください。
1。Alt+F11キーを押して、Microsoft Visual Basic for Applicationsウィンドウを開きます。
2。Microsoft Visual Basic for Applicationsウィンドウで、挿入 > 標準モジュールをクリックし、次の VBA コードをコードウィンドウにコピーしてください。
VBA コード:Excel で数値を個別の桁に分割する
Sub SplitNumberIntoDigits()
'Updateby Extendoffice 2021118
Dim Rng As Range
Dim InputRng As Range, OutRng As Range
xTitleId = "Kutools for Excel"
Set InputRng = Application.Selection
Set InputRng = Application.InputBox("Range :", xTitleId, InputRng.Address, Type:=8)
Set OutRng = Application.InputBox("Out put to (single cell):", xTitleId, Type:=8)
xInt = InputRng.Row
Application.ScreenUpdating = False
For Each Rng In InputRng
xValue = Rng.Value
xRow = (Rng.Row - xInt) + 1
For I = 1 To VBA.Len(xValue)
OutRng.Cells(xRow, I).Value = VBA.Mid(xValue, I, 1)
Next
Next
Application.ScreenUpdating = True
End Sub 
3。F5キーを押してコードを実行すると、Kutools for Excelのダイアログボックスが表示されます。分割したい数値セルの範囲を選択し、OKボタンをクリックしてください。

4。2 つ目 Kutools for Excelダイアログボックスが表示されたら、個別桁を出力するセルを選択してOKをクリックします。

注:このコードは、単語を個別の文字に分割することもできます。
選択したセル内の数値が各桁ごとに分割され、それぞれ別の列に配置されます。

Kutools for Excelのセルの分割機能は、Excel で数値を簡単に個別の桁に分割できる便利なツールです。
1。Kutools for Excelをインストール後、分割したい数値が入力されたセル範囲を選択し、Kutools>結合と分割>セルの分割をクリックします。
2。セルの分割ダイアログボックスで、以下の設定を行います。
ボタンをクリックして範囲を変更できます;
3。表示されました。セルの分割ダイアログボックスで、桁を出力する空白セルを選択して、OKボタンをクリックしてください。

選択したセル内の数値が、一括で各桁に分割されます。
Kutools for Excel— 300 以上の必須ツールでExcel を強化し、作業をより迅速・簡単に。AI 機能を活用して、スマートなデータ処理と生産性の飛躍的な向上を実現します。今すぐ入手
例 #2 小数点で数値を分割
このセクションでは、Excel で数値を整数部と小数部に分けるさまざまな方法をご紹介します。

TRUNC 関数を使えば、Excel で小数点以下を簡単に切り捨てて数値を整えることができます。以下の手順に従って操作してください。
汎用的な数式
整数部を取得
=TRUNC(A1)
小数部を取得
=A1-TRUNC(A1)
引数
これで、この2 つの数式を使えば、指定された範囲内のセルに含まれる数値を小数点で分割できます。
1。最初の数値セルの整数部分を表示したいセルを選択し、以下の数式を入力してEnterキーを押してください。その後、その結果セルを選択し、オートフィルハンドルを下にドラッグして他の数値セルの整数部分を一括取得しましょう。
=TRUNC(B5)

2。小数部を表示するには、最初の結果セルの隣のセルを選択し、次の数式を入力してください。Enterキーを押してください。その後、その結果セルを選択し、オートフィルハンドルを下にドラッグして他の数値セルの小数部を取得します。
=B5-TRUNC(B5)

Excel で小数点を基準に数値を分割するには、テキストを列に分ける機能が便利です。
1。小数点で分割したい数値セルの範囲を選択し、データ>テキストを列に分けるをクリックします。
2。テキストを列に分けるウィザード – ステップ 1 / 3ダイアログボックスで、区切り文字付きラジオボタンを選択し、次へボタンをクリックしてください。

3。ステップ 2 / 3ダイアログボックスで、その他チェックボックスのみをオンにし、テキストボックスにピリオド(。)を入力して、次へボタンをクリックします。

4。ステップ 3 / 3ダイアログボックスで、
ボタンをクリックして、分割後の整数部と小数部の出力先セルを選択し、最後に完了ボタンをクリックします。スクリーンショットをご参照ください:

これにより、選択したセルの値が整数部と小数部に下図のように分割されます。ただし、小数部のマイナス記号が失われる場合があり、これはユーザーにとって重要な情報かもしれません。

フラッシュフィルで小数点で数値を分割(2013 以降のバージョン)
上記の例では、セル内のフラッシュフィル機能を使ってテキストと数字を分割する方法を紹介しましたが、ここでは同じ方法で小数点を基に数値を分割する方法を説明します。
1。いくつかの例を入力します。この例では、B5 の整数部分を C5 に、B6 の整数部分を C6 に入力します。スクリーンショットをご参照ください。
注:負の数値の場合、マイナス記号も忘れずに一緒に入力してください。

3。入力したい列で例を含むセルを選択し、データ>フラッシュフィルをクリックしてください。

これにより、指定した数値セルから下図のように整数部分が抽出されます。

4。同じ手順を繰り返して、同じ数値セルから小数部分を分離します。

3。日付のセルを分割する
もう一つよくあるケースは、日付が入力されたセルを分割することです。日付を「日」「月」「年」に分ける場合や、「日付」と「時刻」に分ける必要がある場合は、目的に応じて以下の解決策をご活用ください。
例 #1 日付セルを日、月、年に分割
B5:B9 の範囲に日付リストがあり、それぞれの日付を「日」「月」「年」の3 つの別々の列に分割したい場合があります。ここでは、日付を分割するための3 つの方法をご紹介します。

Excel で日付を日、月、年に分割するには、DAY 関数、MONTH 関数、およびYEAR 関数を使った3 つの数式が使えます。
汎用的な数式
=DATE(A1)
=MONTH(A1)
=YEAR(A1)
引数
1。日、月、年をそれぞれ配置するための3 つの列を作成します。
2。「日」列の最初のセルを選択し、以下の数式を入力してEnterキーを押して、最初の日付セル(B5)の「日」を取得します。この結果セルを選択し、オートフィルハンドルを下にドラッグして他の日付セルの「日」を取得します。
=DAY(B5)

3。ステップ1 と同様に、「月」列および「年」列にも以下の数式を適用し、日付セルからそれぞれの月と年を抽出します。
日付の月を取得
=MONTH(B5)

日付の年を取得
=YEAR(B5)

上記の手順に従って「テキストを列に分ける」機能を適用し、Excel で日付セルを日、月、年に分割できます。
注:ステップ 2/3ダイアログボックスでは、「その他」チェックボックスのみをオンにして、テキストボックスに/記号を入力してください。

以下のデモでは、セルの分割機能を使って日付を月・日・年に分ける方法をご紹介します。Kutools for Excel。
この機能を使えば、数回のクリックで日付を一括して分割できます。

Kutools for Excel— 300 以上の必須ツールでExcel を強化し、作業をより迅速・簡単に。AI 機能を活用して、スマートなデータ処理と生産性の飛躍的な向上を実現します。今すぐ入手
例 #2 セル内の日付と時刻を分割する
B5:B9 に日付と時刻が混在したリストがあり、これらをそれぞれ別の列に分割したい場合、このセクションではその実現をサポートするさまざまな方法をご紹介します。

Excel で日付と時刻を別々の列に分けるには、次の数式をご利用いただけます。
1.日付と時刻を配置するための列を2 つご用意ください。
2.日付列のセルを日付形式に、時刻列のセルを時刻形式に設定します。


3.日付列の最初のセルを選択し、下記の数式を入力してEnterキーを押すと、B5 の日付が取得されます。この結果セルを選択し、オートフィルハンドルを下にドラッグして他の日付を取得します。
=INT(B5)

4.時刻列に次の数式を適用し、B5:B9 の時刻を取得します。
=B5-D5

フラッシュフィル(2013 以降のバージョン)でセル内の日付と時刻を分割する
Excel 2013 以降をご利用の場合、内蔵のフラッシュフィル機能で日付と時刻を簡単に別の列に分割できます。
1.日付列と時刻列を作成し、出力したい例をいくつか入力します。日付列には、C5 に B5 の日付を、C6 に B6 の日付を入力してください。時刻列には、D5 に B5 の時刻を、D6 に B6 の時刻を入力してください。スクリーンショットをご覧ください。

2.入力したい日付列(例を含む)を選択し、データ>フラッシュフィルをクリックします。
3.入力したい時刻列(例を含む)を選択し、同様にフラッシュフィル機能を有効にすると、B5:B9 の日付と時刻が下記のデモのように別々の列に分割されます。

これで、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 日間のフル機能トライアル— 登録不要、クレジットカード不要
- 最高のお得感— 個別アドイン購入よりお得