Excelでカンマ区切りのテキスト文字列をリストに変換するにはどうすればよいですか?

カンマ区切りのテキスト文字列をExcelでリストや行に変換することは、特にCSVファイルやその他のテキストソースからのデータインポートを行う際に一般的な作業です。以下では、Excelの組み込み機能や数式を利用してこのタスクを達成するためのさまざまな方法について詳しく説明します。
Excelでカンマ区切りのテキスト文字列をリストに変換
数式を使用してカンマ区切りのテキスト文字列をリストに変換(Excel 365)
Excel 365ユーザーの場合、TEXTSPLIT関数はカンマ区切りの文字列を行または列に変換する効率的で簡単な方法です。この関数は出力サイズに基づいてセル範囲を自動的に調整します(結果が複数のセルにわたって表示されます)。
結果を開始したいセルをクリックし、以下の数式を入力してEnterキーを押します。カンマ区切りのテキスト文字列が含まれているセルは一度にリストに変換されます。スクリーンショットをご覧ください:
=TRANSPOSE(TEXTSPLIT(TEXTJOIN(", ", TRUE, A1:A4), ", "))
- TEXTJOIN(", ", TRUE, A1:A4):
この部分では、A1からA4のセルにあるテキスト値をカンマとスペース(, )で区切られた単一の文字列に結合します。
TRUE引数により、範囲内の空のセルは無視されます。 - TEXTSPLIT(..., ", "): TEXTJOINによって結合された文字列は、カンマとスペース(, )を区切り文字として使用して個別の項目に分割されます。
これにより、元の値の配列が作成されます。 - TRANSPOSE(...): 最後に、TRANSPOSE関数は配列を垂直方向の列から水平方向の行に(またはその逆に、元の配置に応じて)変換します。
- 利点:
- 使いやすさ: 簡単で直感的で、追加のツールが必要ありません。
- 動的配列: ソースセルのデータが変更されても自動的に調整されるため、常に最新の出力を確保できます。
- 欠点:
- 利用可能性の制限: Excel 365でのみ利用可能で、古いバージョンのExcelユーザーにはアクセスできません。
Kutools for Excelを使用してカンマ区切りのテキスト文字列をリストに変換
Excel 365にアクセスできない場合、Kutools for Excelはこのタスクを簡素化する強力で直感的な代替手段を提供します。「Split Data to Rows」機能を使用すると、カンマ区切りの文字列を複数の行にシームレスに変換でき、データ管理をより効率的かつシンプルに行うことができます。
Kutools for Excelをインストールした後、次の手順を実行してください:
- 「Kutools」>「Merge & Split」>「Split Data to Rows」をクリックします。スクリーンショットをご覧ください:
- 「Split Data to Rows」ダイアログボックスで、次の操作を指定します:
- 分割したいセルを選択します;
- 「Delimiter」セクションで、「Other」を選択し、その後に区切り文字(例:カンマとスペース)を入力して、セル内容をどのように分割するかを定義します;
- 最後にOKボタンをクリックします。
結果:選択したセルの内容はカンマによってリストに分割されます。
- 利点:
- 多様性: Excelのネイティブ機能よりも多くのカスタマイズオプションを提供します。
- ユーザーフレンドリー: GUIを提供し、ユーザーがプロセスをガイドできるため、Excel関数にあまり精通していない人にもアクセス可能です。
- すべてのExcelバージョンに対応: KutoolsはすべてのExcelバージョンで使用できます。
- 欠点:
- インストールが必要。
VBAコードを使用してカンマ区切りのテキスト文字列をリストに変換
以下のVBAコードを使用すると、複数のカンマ区切りのセル値を列に変換することができます。次のように操作してください:
1. Excelで「Alt + F11」キーを押すと、「Microsoft Visual Basic for Applications」ウィンドウが開きます。
2. 「Insert」>「Module」をクリックし、以下のマクロをモジュールウィンドウに貼り付けます。
VBAコード: カンマ区切りのテキスト文字列を行またはリストに変換
Sub RedistributeCommaDelimitedData()
'Updateby Extendoffice
Dim xArr() As String
Dim xAddress As String
Dim Rg As Range
Dim Rg1 As Range
On Error Resume Next
xAddress = Application.ActiveWindow.RangeSelection.Address
Set Rg = Application.InputBox("please select the data range:", "Kutools for Excel", xAddress, , , , , 8)
If Rg Is Nothing Then Exit Sub
Set Rg = Application.Intersect(Rg, Rg.Parent.UsedRange)
If Rg Is Nothing Then Exit Sub
Set Rg1 = Application.InputBox("please select output cell:", "Kutools for Excel", , , , , , 8)
If Rg1 Is Nothing Then Exit Sub
xArr = Split(Join(Application.Transpose(Rg.Value), ","), ",")
Rg1.Resize(UBound(xArr) + 1) = Application.Transpose(xArr)
Rg1.Parent.Activate
Rg1.Resize(UBound(xArr) + 1).Select
End Sub
3. 次にF5キーを押してこのコードを実行します。ポップアップしたダイアログボックスで、変換したいデータ範囲を選択します。スクリーンショットをご覧ください:
4. OKをクリックすると、次のダイアログで結果を出力したいセルを指定します。スクリーンショットをご覧ください:
5. OKボタンをクリックすると、選択したカンマ区切りのセル値が行のリストに変換されます。スクリーンショットをご覧ください:
- 利点:
- すべてのExcelバージョンに対応: VBAはExcel 2007以降のバージョンで使用できます。
- 自動処理: 大量のデータを一括で処理できるため、繰り返しの多いタスクに最適です。
- 欠点:
- プログラミング知識が必要: VBAコードにはある程度のプログラミングスキルが必要であり、初心者には使いにくい場合があります。
- セキュリティ上の懸念: マクロを有効にすると、特に不明なソースからのファイルを扱う場合、セキュリティリスクが生じる可能性があります。
Kutoolsのようなノーコードのソリューションを好む場合でも、Excel 365の組み込み数式のシンプルさ、またはVBAスクリプトの堅牢性を利用する場合でも、Excelにはカンマ区切りのテキスト文字列を有用なデータ形式に効率的に変換するためのさまざまなツールが用意されています。これらの方法は生産性を向上させ、スプレッドシートでのより効果的なデータ管理と分析を可能にします。さらに多くのExcelのヒントやコツを探求したい場合は、当サイトには数千ものチュートリアルがあり、Excelを習得するお手伝いをしています。
関連記事:
キャリッジリターンでセルを複数の列または行に分割するにはどうすればよいですか?
Excelでセルの値を複数の列に分割するにはどうすればよいですか?
最高のオフィス生産性ツール
🤖 | Kutools AI Aide:データ分析を革新:インテリジェント実行 | コード生成 | カスタム数式の作成 | データを分析してグラフを生成 | Kutools Functions を呼び出す… |
人気機能:重複の検索・ハイライト・マーキング | 空白行を削除 | データを失わず列やセルを統合 | 丸める ... | |
スーパー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でタブ編集とタブ閲覧を有効にします
- 同じウィンドウ内の新しいタブで複数のドキュメントを開いたり作成したりできます。新しいウィンドウを開く必要はありません。
- 生産性が50%向上し、1日に何百回ものマウスクリックも削減できます!