Excelでコンマ区切りリストを2つの列に分割するにはどうすればよいですか?


14

私は、Excelで次のように見える長いコンマ区切りのリストを持っています。

401.50,0.027  
402.00,0.028  
402.50,0.029  
403.00,0.031  
403.50,0.032  
404.00,0.034  
404.50,0.037  

これを2つの別々の列に変換する簡単な方法はありますか?800以上の値があり、それらすべてを個別に分離することは本当に楽しみではありません。

回答:


30

列へのテキストを使用してみましたか?

  1. リストを含む列を強調表示します。
  2. [ データ] > [ テキストから列へ]に移動します。
  3. [ 区切り]を選択します。次へをクリックします。
  4. コンマを選択します。次へをクリックします。
  5. [ 全般]または[ テキスト]を選択します。
  6. 以下のまま先にあるとして、または別の列を選択してください。[ 完了]をクリックします。

2つの別々の列で2つの数式を使用することもできます。

コンマの左側の値を取得するには、次のようにします。

=0+LEFT(K1,FIND(",",K1)-1)

カンマの右側の値を取得するには:

=0+RIGHT(K1,LEN(K1)-FIND(",",K1))

ここでK1、次のような初期文字列が含まれています401.50,0.027

** 0+数式が抽出された部分文字列を数値データに変換する前。


この後、列を行に変換するには、列を選択して、[貼り付け]、[転置]の順​​に選択します。
live-love

Googleスプレッドシートで機能します
DanielBlazquez 2017

3

テキストをテキストエディターにコピー/貼り付けすべてのスペース文字をキャリッジリターン/ラインフィードで置き換えTXTファイルとして保存します。Excelでファイルを開きます。


0

リストを処理するための小さなvbaを書きます

これは、値のリストが単一のセルにあり、選択されていることを前提としています。結果を次のセルに入れます

Sub zx()
    Dim a() As String
    Dim v As Variant
    Dim i As Long
    Dim j As Long

    a = Split(ActiveCell.Value, " ")
    ReDim v(1 To UBound(a) + 1, 1 To 2)
    For i = 1 To UBound(a) + 1
        j = InStr(a(i - 1), ",")
        v(i, 1) = Val(Left(a(i - 1), j - 1))
        v(i, 2) = Val(Mid(a(i - 1), j + 1))
    Next

    ActiveCell.Offset(1, 0).Resize(UBound(a) + 1, 2) = v
End Sub
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.