1つのセルからテキストと数字を2つの列に分けるにはどうすればよいですか?
テキストと数字で構成された文字列の列がある場合、次のスクリーンショットに示すように、1つのセルからテキストと数字をそれぞれ異なるセルに分けたいとします。Excelでは、以下の方法でこのタスクを完了できます。

方法1: Excelで数式を使用してテキストと数字を分離する
次の数式を使用すると、セルからテキストと数字を2つの別々のセルに抽出できます。以下のように操作してください:
1. 結果を配置したい空白セル(C3など)に次の数式を入力します:=LEFT(A3,MIN(FIND({0,1,2,3,4,5,6,7,8,9},A3&"0123456789"))-1) (A3は、分離したい文字列が含まれているセルです)。そして、Enterキーを押して、セルA2からテキストのみを取得します。スクリーンショットをご覧ください:
2. 次に、この数式を適用してセルから数字を抽出することができます:=RIGHT(A3,LEN(A3)-MIN(FIND({0,1,2,3,4,5,6,7,8,9},A3&"0123456789"))+1) (A3は、分離したい文字列が含まれているセルです)。この数式を数字を配置したいD3セルに入力し、Enterキーを押すと、次のように数字が得られます:
3. 次に、セルC3:D3を選択し、これらの数式を含むようにしたいセルまでフィルハンドルをドラッグすると、テキストと数字が異なるセルに分離されているのがわかります:
Kutools for Excelの「セルの分割」機能は強力なツールであり、セルの値を複数の列や行に分割したり、英数字の文字列を分離されたテキストと数字の列に分割するのに役立ちます。 Kutools for Excelをダウンロードしてください!

方法2: Excel 2013以降のバージョンでフラッシュフィルを使用してテキストと数字を分離する
上記の数式では、テキストが数字の前にある場合にのみテキストと数字を分離できます。数字がテキストの前にある文字列を分離するには、Excel 2013以降のバージョンのフラッシュフィル機能を使用できます。
Excel 2013以降のバージョンをお持ちの場合、フラッシュフィル機能が1つの列にテキストを、もう1つの列に数字を入力するのに役立つかもしれません。次のように操作してください:
1. 最初の文字列の数字を完全に隣接する空白セル(B3など)に入力します。スクリーンショットをご覧ください:
2. 次に、数字を入力したい範囲B3:B7を選択し、「データ」>「フラッシュフィル」をクリックすると、一気にセルに数字だけが入力されます。スクリーンショットをご覧ください:
3. 次に、完全な文字列をセルC3に入力します。スクリーンショットをご覧ください:
4. ステップ2と同じように、テキストのみを入力したいセル範囲C3:C7を選択し、「データ」>「フラッシュフィル」をクリックすると、次のようにテキストが分離されます:
ヒント:また、フィルハンドルをドラッグして使用したい範囲を選択し、「オートフィルオプション」をクリックして「フラッシュフィル」をチェックすることもできます。
方法3: 不規則に混在したテキストと数字をユーザー定義関数で分離する
次に示すような不規則に混在したテキストと数字の文字列がある場合、Excelにはこの問題を解決する一般的な機能はありませんが、ユーザー定義関数を作成することでこれを実現できます。
1. ALT + F11キーを押してMicrosoft Visual Basic for Applicationsウィンドウを開きます。
2. 「挿入」>「モジュール」をクリックし、モジュールウィンドウに次のコードを貼り付けます。
VBAコード:1つのセルから異なるセルにテキストと数字を分離する
Public Function SplitText(pWorkRng As Range, pIsNumber As Boolean) As String
'Updateby Extendoffice
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. その後、このコードを保存して閉じ、ワークシートに戻ります。「=SplitText(A3,FALSE)」という数式を空白セルに入力して、テキスト文字列のみを取得し、その数式を埋めたいセルまでフィルハンドルをドラッグします。スクリーンショットをご覧ください:
4. そして、別のセルに「 =SplitText(A3,TRUE)」という数式を入力し、その数式を埋めたいセルまでフィルハンドルをドラッグして数字を取得します。スクリーンショットをご覧ください:
注意:文字列に小数点以下の数字がある場合、結果は正しくないことがあります。
方法4: Kutools for Excelを使用してテキストと数字を2つの列に分離する
Kutools for Excelを持っている場合、強力なツールである「セルの分割」ユーティリティを使用して、テキスト文字列を2つの列に素早く分割できます。1つは数字、もう1つはテキストです。
Kutools for Excelをインストール後、次のように操作してください:
1. テキストと数字を分離したいデータ範囲を選択します。
2. 次に、「Kutools」>「結合と分割」>「セルの分割」をクリックします。スクリーンショットをご覧ください:
3. 「セルの分割」ダイアログボックスで、「タイプ」セクションの「列に分割」オプションを選択し、「区切り文字」セクションの「テキストと数字」をチェックします。スクリーンショットをご覧ください:
4. 「OK」ボタンをクリックすると、結果を出力するセルを選択するよう求めるポップアップボックスが表示されます。スクリーンショットをご覧ください:
5. 「OK」ボタンをクリックすると、選択範囲内のテキスト文字列が次のスクリーンショットに示すように2つの列に分離されます:
今すぐKutools for Excelをダウンロードして無料トライアル!
Kutools for Excelを使用してテキストと数字を分離する
関連記事:
Excelで単語を個別の文字に分割するにはどうすればよいですか?
キャリッジリターンによってセルを複数の列または行に分割するにはどうすればよいですか?
最高のオフィス生産性ツール
🤖 | Kutools AI アシスタント: データ分析を革命化する: インテリジェント実行 | コード生成 | カスタム数式の作成 | データを分析しグラフを生成 | 拡張機能を呼び出す… |
人気の機能: 重複を見つけてハイライトまたはマーキング | 空白行を削除 | データを失わずに列またはセルを統合 | 丸める ... | |
スーパーLOOKUP: 複数条件のVLookup | 複数値のVLookup | 複数シートの検索 | ファジーマッチ .... | |
高度なドロップダウンリスト: ドロップダウンリストを迅速に作成 | 依存ドロップダウンリスト | マルチセレクトドロップダウンリスト .... | |
列管理: 特定の数の列を追加 | 列を移動 | 非表示列の可視ステータスを切り替え | 範囲と列を比較 ... | |
注目の機能: グリッドフォーカス | デザインビュー | 強化された数式バー | ワークブック & ワークシート管理 | オートテキスト ライブラリ (Auto Text) | 日付ピッカー | データの統合 | セルの暗号化/復号化 | リストで電子メールを送信 | スーパーフィルター | 特殊フィルタ (太字/斜体/取り消し線をフィルタリング...) ... | |
トップ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%向上させ、毎日数百回のマウスクリックを減らします!