Bagaimana cara menampilkan file .csv dengan benar dalam Excel 2013?

190

Tampaknya Excel 2013 tidak membaca file CSV dengan benar (Excel 2010 tidak). Setiap kali saya membuka file .csv, semua data saya ditampilkan di kolom pertama.

Saya tahu saya bisa pergi ke DATA,, Convertdan kemudian memilih commas, tetapi pengaturan ini tidak disimpan, dan saya muak melakukan ini setiap kali saya membuka file jenis ini.

Bagaimana saya bisa mengatur Excel 2013, sekali dan untuk semua, untuk menampilkan file CSV (dipisahkan oleh koma) dengan cantik?

David
sumber
1
Saat Anda membuka file, apakah ada pesan yang muncul?
Andre Silva
Tidak. Tidak ada pesan yang muncul
David
Pengalaman saya adalah jika file memiliki baris tajuk, Excel 2013 akan secara otomatis melalui panduan impor. Tanpa baris tajuk itu, itu menunjukkan semuanya sebagai satu kolom per baris.
StarPilot

Jawaban:

401

Buka file CSV dengan editor teks yang layak seperti Notepad ++ dan tambahkan teks berikut di baris pertama:

sep=,

Sekarang buka dengan excel lagi.

Ini akan mengatur pemisah sebagai koma, atau Anda dapat mengubahnya ke apa pun yang Anda butuhkan.

Guilherme Viebig
sumber
3
Solusi terbaik, tapi bukan yang saya harapkan. Pengaturan itu bukan dari Excel itu sendiri, itu berarti saya harus menulis baris di atas pada semua file CSV saya.
David
31
Fakta bahwa ini adalah non-standar, tidak ada aplikasi yang menulis CSV menambahkan baris ini, dan hanya Excel (sejauh yang saya tahu) yang menerimanya. Menjadikan ini solusi terbaik yang buruk. Belum lagi ini tidak bekerja untuk Excel 2007 (yang terbaik yang kami miliki di sini di tempat kerja)
jmarkmurphy
21
Kami tidak berbicara tentang standar. Kami berbicara tentang Microsoft Excel. Excel dikirimkan dengan berbagai konfigurasi dan hotkey tergantung pada bahasanya. Ini membuat mengimpor file CSV menjadi teka-teki. Ini hanyalah solusi, dan saya percaya ini membantu banyak orang, sebagian besar pengguna daya, meskipun bukan jawaban terbaik.
Guilherme Viebig
10
Butuh solusi yang tidak melibatkan penambahan baris ke file, karena ini memecah hal-hal lain yang perlu menggunakan file. Juga, sudah mencoba solusi pengaturan regional, tetapi pengaturan sudah seperti yang ditunjukkan dan excel masih meletakkan semuanya di kolom pertama.
Elliot
2
Ini menunjukkan baris jika Anda membuka csv di Libreoffice Calc. Bekerja dengan baik di MS excel.
Arda
38

Masalahnya adalah dari Opsi regional. Pemisah desimal dalam kemenangan 7 untuk negara-negara Eropa adalah koma. Anda harus membuka Panel Kontrol -> Opsi Regional dan Bahasa -> Pengaturan Aditional -> Pemisah Desimal: klik untuk memasukkan titik (.) Dan ke Daftar Pemisah masukkan koma (,). Ini adalah !

skander
sumber
5
Ini tidak bekerja. Saya memiliki set ini seperti yang ditunjukkan dan diabaikan. Semuanya ada di kolom pertama.
Elliot
1
Luar biasa - ini hanya membantu seorang kolega yang menggunakan Office 2011. Kami menetapkan wilayahnya dari Polandia (yang menggunakan "," sebagai pemisah desimal) ke Inggris dan ini memperbaikinya. Mengapa ini harus membuat perbedaan, saya tidak tahu ...
John
3
Solusi ini cocok untuk saya (excel 2013). Saya menyesuaikan format regional saya: Saya menetapkan titik (.) Sebagai "pemisah desimal", koma (,) sebagai "pemisah ribuan" dan koma (,) sebagai "pemisah daftar"
cesargastonec
1
Saya menggunakan format standar "Bahasa Inggris (Kanada)" Windows 10 yang biasanya menampilkan file CSV dengan benar (dipisahkan kolom) ketika membuka file menggunakan Excel 2013-2016. Baru-baru ini saya perhatikan, setelah membuka kembali file CSV, bahwa salah satu aplikasi saya mengubah format penomoran standar. Seperti yang ditentukan di sini, setelah kembali ke titik (.) Sebagai "pemisah desimal" dan koma (,) sebagai format penomoran "pemisah daftar", file CSV ditampilkan dengan baik. Tidak perlu untuk solusi mewah yang melibatkan peretasan baris pertama file CSV dengan notepad untuk menambahkan "sep =,"
JP slash otterlover
1
Akhirnya! Setelah mencoba selama beberapa menit lebih dari yang seharusnya saya ganti dengan regex di Notepad ++ pemisah, titik desimal / koma dan bukan karakter dalam tanda kutip dll., Saya diingatkan tentang jawaban ini dan hanya mengatur pengaturan bahasa saya secara berbeda, seperti ditunjukkan di sini. Sekarang dengan benar memisahkan kolom dan angka juga muncul dengan benar, tanpa mengacaukan teks apa pun.
Fabian Röling
25

Saya tahu bahwa jawaban sudah diterima, tetapi satu hal yang perlu diperiksa adalah penyandian file CSV. Saya memiliki skrip Powershell yang menghasilkan file CSV. Secara default, ini disandikan sebagai UCS-2 Little Endian (per Notepad ++). Itu akan membuka file dalam satu kolom di Excel dan saya harus melakukan konversi Teks ke Kolom untuk membagi kolom. Mengubah skrip untuk menyandikan output yang sama dengan "ASCII" ( UTF-8 tanpa BOM per Notepad ++) memungkinkan saya untuk membuka CSV secara langsung dengan kolom-kolom terbelah. Anda dapat mengubah pengkodean CSV di Notepad ++ juga.

  • Pengkodean Menu > Konversikan ke UTF-8 tanpa BOM
  • Simpan file CSV
  • Buka di Excel, kolom harus dibagi
Shayne Ephraim
sumber
3
Saya menghargai jawaban ini. Saya suka menggunakan Some-Command | Out-File -Encoding Defaultyang biasanya memberikan pengkodean ANSI yang benar (setidaknya pabrik di USA).
Mister_Tom
Jadi, jika Anda tidak menentukan pengkodean, Out-Filemengkodekan file sebagai sesuatu selain dari yang Defaultdefault? Saya mencoba memahami bahwa ... ini default ... tetapi tidak digunakan secara default ... dan karena itu bukan default?
jdgregson
Menggunakan "-Encoding Default" memperbaikinya untuk saya. Terima kasih!
Kirk Liemohn
21

Anda dapat memilih pemisah mana yang Anda inginkan di Excel 2013 Buka DATA -> Teks Ke Kolom -> Pilih dipisahkan -> lalu pilih pemisah Anda "Tab, Titik Koma, Koma, Spasi atau lainnya" dan Anda akan melihat perubahan segera di "pratinjau data" "lalu klik FInish

Setelah Anda memiliki format yang Anda inginkan, Anda cukup menyimpan dokumen dan itu akan permanen.

pengguna3241007
sumber
2
Ini tidak menjawab pertanyaan utama. Kita perlu ini menjadi perilaku default untuk file seperti itu, bukan untuk memperbaikinya dalam satu file tertentu.
Elliot
17

Diambil dari /superuser/238944/how-to-force-excel-to-open-csv-files-with-data-arranged-in-columns

Perilaku Excel saat membuka file CSV sangat tergantung pada pengaturan lokal Anda dan pemisah daftar yang dipilih di bawah Wilayah dan bahasa » Format » Lanjutan . Secara default Excel akan menganggap setiap CSV disimpan dengan pemisah itu. Yang benar selama CSV tidak datang dari negara lain!

Jika pelanggan Anda berada di negara lain, mereka mungkin melihat hasil lain maka Anda berpikir.

Misalnya, di sini Anda melihat bahwa Excel Jerman akan menggunakan titik koma alih-alih koma seperti di AS

Pengaturan Regional

cdmdotnet
sumber
> Solusi ini cocok untuk saya (excel 2013). Saya menyesuaikan format regional saya: Saya menetapkan titik (.) Sebagai "pemisah desimal", koma (,) sebagai "pemisah ribuan" dan koma (,) sebagai "pemisah daftar" - cesargastonec 13 Jul '15 at 16: 05
Alex78191
1
Atau Anda dapat mengubah pemisah desimal di opsi Excel superuser.com/a/1470373
Alex78191
4

Masalah lain yang mungkin terjadi adalah file csv berisi tanda urutan byte "FEFF". Tanda urutan byte dimaksudkan untuk mendeteksi apakah file telah dipindahkan dari sistem menggunakan big endian atau sedikit pemesanan byte endian ke sistem dengan endianness yang berlawanan.https://en.wikipedia.org/wiki/Byte_order_mark

Menghapus tanda urutan byte "FEFF" menggunakan hex editor akan memungkinkan Excel membaca file.

Devon Holcombe
sumber