Bagaimana cara memisahkan daftar yang dipisahkan koma menjadi dua kolom di Excel?

14

Saya memiliki daftar panjang yang dipisahkan koma yang terlihat seperti ini di 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  

Apakah ada cara sederhana untuk mengubahnya menjadi dua kolom terpisah? Ada lebih dari 800 nilai, dan saya benar-benar tidak sabar untuk memisahkan semuanya secara individual.

Brittany
sumber

Jawaban:

30

Sudahkah Anda mencoba menggunakan Teks ke Kolom ?

  1. Sorot kolom yang berisi daftar Anda.
  2. Buka Data > Teks ke Kolom .
  3. Pilih Dibatasi . Klik Selanjutnya .
  4. Pilih Koma . Klik Selanjutnya .
  5. Pilih Umum atau Teks , mana yang Anda inginkan.
  6. Tinggalkan Tujuan apa adanya, atau pilih kolom lain. Klik Selesai .

Anda juga bisa menggunakan dua rumus dalam dua kolom terpisah.

Untuk mendapatkan nilai di sebelah kiri koma:

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

Untuk mendapatkan nilai di sebelah kanan koma:

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

di mana K1berisi string awal, seperti401.50,0.027

** 0+sebelum formula mengubah substring yang diekstraksi menjadi data numerik.

Ellesa
sumber
Setelah ini, untuk mengonversi kolom menjadi baris, Anda dapat memilih kolom, lalu pilih Tempel dan kemudian Transpos.
live-love
Ini berfungsi di Google Spreadsheets
DanielBlazquez
3

Salin / Tempel teks ke editor teks Ganti semua karakter ruang dengan carriagereturn / linefeeds Simpan sebagai file TXT. Buka file dalam Excel.

Steve Rindsberg
sumber
0

tulis sedikit vba untuk memproses daftar Anda

Ini mengasumsikan daftar nilai dalam sel tunggal dan dipilih. Menempatkan hasilnya di sel-sel berikut

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
chris neilsen
sumber