Isi kandungan
CSV tidak dibuka dengan betul dalam Excel? Tutorial menyiasat isu biasa dan menyediakan penyelesaian yang paling berkesan.
Format CSV biasanya digunakan untuk mengimport/mengeksport data antara pelbagai program hamparan. Nama CSV (nilai dipisahkan koma) membayangkan penggunaan koma untuk memisahkan medan data. Tetapi itu secara teori. Dalam amalan, banyak yang dipanggil fail CSV memisahkan data menggunakan aksara lain seperti koma bertitik atau tab. Sesetengah pelaksanaan menyertakan medan data dalam tanda petikan tunggal atau berganda, manakala yang lain memerlukan tanda pesanan bait Unicode (BOM), contohnya UTF-8, untuk tafsiran Unicode yang betul. Kekurangan standard menimbulkan pelbagai masalah dengan penukaran CSV kepada Excel.
Fail CSV dibuka dalam satu lajur dalam Excel
Gejala . Apabila membuka fail csv dalam Excel, semua data muncul dalam satu lajur.
Sebab . Untuk memisahkan data dalam lajur, Excel menggunakan set pemisah senarai dalam tetapan Serantau Windows anda. Ini mungkin sama ada koma (di Amerika Utara dan beberapa negara lain) atau koma bertitik (di negara Eropah). Apabila pembatas yang digunakan dalam fail .csv tertentu berbeza daripada pemisah lalai, fail itu dibuka dalam satu lajur.
Penyelesaian . Terdapat beberapa penyelesaian yang mungkin untuk kes ini termasuk makro VBA atau perubahan global dalam tetapan Windows. Kami akan menunjukkan cara untuk menyelesaikan isu dengan cepat tanpa mengubah lalaipemisah senarai pada komputer anda, jadi tiada aplikasi anda akan terjejas.
Tukar pembatas dalam fail CSV
Untuk Excel dapat membaca CSV dengan pemisah yang berbeza, anda boleh menentukan pembatas terus dalam fail itu. Untuk melakukannya, buka fail dengan mana-mana editor teks (Notepad akan berfungsi dengan baik) dan tambahkan teks di bawah pada baris pertama. Ambil perhatian, ia mestilah baris yang berasingan sebelum sebarang data lain:
- Untuk mengasingkan dengan koma: sep=,
- Untuk mengasingkan dengan koma bertitik: sep=;
Dengan cara yang sama, anda boleh menetapkan mana-mana pemisah tersuai lain - hanya taipkannya selepas tanda kesamaan.
Dengan pemisah yang sesuai ditentukan, anda kini boleh membuka fail dengan cara biasa, daripada Excel sendiri atau daripada Windows Explorer.
Tentukan pembatas apabila mengimport fail CSV ke Excel
Daripada membuka fail csv dalam Excel, importnya menggunakan sama ada Text Import Wizard (dalam semua versi) atau Power Query (dalam Excel 365 - 2016).
Wizard Import Teks ( Data tab > Dari Teks ) menyediakan beberapa pilihan untuk pembatas dalam langkah 2. Secara amnya, anda akan memilih:
- Koma untuk fail nilai dipisahkan koma
- Tab untuk fail teks
- Koma bertitik untuk fail nilai dipisahkan koma bertitik
Jika anda tidak pasti pemisah apa yang terkandung dalam data anda, cuba pembatas yang berbeza dan lihat yang mana satu berfungsi dengan betul pratonton Data.
Apabila membuat aSambungan Power Query, anda boleh memilih pembatas dalam tetingkap dialog Pratonton:
Untuk mendapatkan arahan langkah demi langkah yang terperinci, sila lihat contoh yang dipautkan di atas.
Pisah sel menggunakan ciri Teks ke Lajur
Sekiranya data anda sudah dipindahkan ke Excel, anda boleh memisahkannya ke lajur yang berbeza dengan menggunakan ciri Teks ke Lajur . Pada asasnya, ia berfungsi seperti Wizard Import Teks: anda memilih pembatas dan Pratonton data mencerminkan perubahan dengan segera:
Untuk butiran penuh, sila lihat Cara membelah sel dalam Excel.
Cara mengekalkan sifar pendahuluan dalam Excel CSV
Gejala. Sesetengah nilai dalam fail csv anda mengandungi sifar pendahuluan. Apabila fail dibuka dalam Excel, sifar sebelumnya hilang.
Sebab . Secara lalai, Microsoft Excel menukar fail csv kepada format Umum yang menghilangkan sifar pendahuluan.
Penyelesaian . Daripada membuka, import CSV anda ke Excel dan pilih format Teks untuk lajur yang bermasalah.
Menggunakan Wizard Import Teks
Untuk memulakan Import Text Wizard secara automatik, tukar sambungan fail daripada .csv kepada .txt, dan kemudian buka fail teks daripada Excel. Atau dayakan ciri Daripada Teks (Legasi) dan mula mengimport CSV ke Excel.
Dalam langkah 3 wizard, pilih lajur yang mengandungi nilai dengan sifar pendahuluan dan tukar formatnya kepada Teks . Ini akan mengimport nilaisebagai rentetan teks mengekalkan semua sifar pendahuluan di tempatnya.
Menggunakan Power Query
Jika anda lebih suka mengimport fail csv ke Excel dengan menyambung kepadanya, terdapat dua cara untuk terus mendahului sifar.
Kaedah 1: Import semua data dalam format Teks
Dalam kotak dialog pratonton, di bawah Pengesanan Jenis Data , pilih Jangan mengesan jenis data . Kandungan fail csv anda akan dimuatkan ke dalam Excel sebagai teks dan semua sifar pendahuluan akan dikekalkan.
Nota. Kaedah ini berfungsi dengan baik jika fail anda mengandungi hanya teks data. Jika terdapat pelbagai jenis nilai, maka gunakan kaedah 2 untuk menentukan format yang sesuai untuk setiap lajur secara individu.
Kaedah 2: Tetapkan format untuk setiap lajur
Dalam situasi apabila fail csv anda mengandungi pelbagai jenis data seperti teks, nombor, mata wang, tarikh dan masa, anda boleh menunjukkan secara eksplisit yang format harus digunakan untuk setiap lajur tertentu.
- Di bawah pratonton data, klik Ubah Data .
- Dalam Editor Pertanyaan Kuasa, pilih lajur tempat anda mahu mengekalkan sifar sebelumnya dan klik Jenis Data > Teks .
- Tutup & Muat - ini akan memuatkan keputusan ke helaian baharu dalam semasabuku kerja.
- Tutup & Muatkan Ke… - ini akan membenarkan anda memutuskan tempat untuk memuatkan hasil.
Petua. Kaedah ini juga boleh menghalang manipulasi lain dengan data anda yang Excel cuba lakukan secara automatik. Contohnya, jika data yang diimport bermula dengan "=", Excel akan cuba mengiranya. Dengan menggunakan format Teks , anda menunjukkan bahawa nilai adalah rentetan, bukan formula.
Cara menyelesaikan masalah format tarikh CSV dalam Excel
Gejala. Selepas menukar CSV kepada Excel, tarikh tidak diformatkan dengan betul, hari dan bulan ditukar, beberapa tarikh ditukar kepada teks, dan beberapa nilai teks diformat secara automatik sebagai tarikh.
Sebab . Dalam fail csv anda, tarikh ditulis dalam format yang berbeza daripada format tarikh lalai yang ditetapkan dalam sistem pengendalian anda, yang menyebabkan Excel gagal mentafsir tarikh dengan betul.
Penyelesaian . Bergantung pada masalah yang anda hadapi, cuba salah satu daripada penyelesaian berikut.
Hari dan bulan bercampur-campur
Apabila format tarikh dalam tetapan Windows Regional dan fail csv berbeza , tiada cara untuk Excel menentukan bahawa tarikh mm/dd/yy yang dicari disimpan dalam format dd/mm/yy dalam fail tertentu itu. Akibatnya, unit hari dan bulan diterbalikkan: Jan-3 menjadi Mac-1 , Jan-10 menjadi Okt-1 , dan seterusnya. Selain itu, tarikh selepas 12 Jan ialahditukar kepada rentetan teks kerana tidak wujud bulan ke-13, ke-14, dsb..
Untuk tarikh diimport dengan betul, jalankan Wizard Import Teks dan pilih format Tarikh yang diperuntukkan dalam langkah 3 :
Sesetengah nilai ditukar kepada tarikh
Microsoft Excel direka bentuk untuk memudahkan anda memasukkan pelbagai jenis nilai. Oleh itu, jika Excel percaya bahawa nilai yang diberikan mewakili tarikh, ia diformatkan secara automatik sebagai tarikh. Sebagai contoh, rentetan teks apr23 kelihatan sangat mirip dengan 23 April dan 11/3 menyerupai 3 November , jadi kedua-dua nilai adalah ditukar kepada tarikh.
Untuk menghentikan Excel daripada menukar nilai teks kepada tarikh, gunakan pendekatan yang sudah biasa: tukar CSV kepada Excel dengan mengimportnya. Dalam langkah 3 Wizard Import Teks , pilih lajur yang bermasalah dan tukar formatnya kepada Teks .
Tarikh diformatkan salah
Apabila fail csv dibuka dalam Excel, tarikh biasanya dipaparkan dalam format lalai. Sebagai contoh, dalam fail asal anda, anda mungkin mempunyai 7-Mei-21 atau 05/07/21 , manakala dalam Excel ia kelihatan sebagai 5/7/2021 .
Untuk memaparkan tarikh dalam format yang diingini, gunakan ciri Format Sel :
- Pilih lajur tarikh.
- Tekan Ctrl + 1 untuk membuka kotak dialog Format Sel .
- Pada tab Nombor , pilih Tarikh di bawah Kategori .
- Di bawah Jenis ,pilih pemformatan yang diingini.
- Klik OK.
Jika tiada format pratetap sesuai untuk anda, maka anda boleh membuat anda sendiri seperti yang dijelaskan dalam Cara membuat format tarikh tersuai dalam Excel.
Halang Excel daripada menukar nombor kepada notasi saintifik
Simptom. Selepas menukar CSV kepada Excel, panjangkan nombor diformatkan sebagai tatatanda saintifik, cth. 1234578900 muncul sebagai 1.23E+09.
Sebab . Dalam Microsoft Excel, nombor dihadkan kepada 15 digit ketepatan. Jika nombor dalam fail csv anda melebihi had itu, Excel menukarnya secara automatik kepada notasi saintifik sebagai cara untuk mematuhi had tersebut. Jika nombor mengandungi lebih daripada 15 digit bererti, semua digit "tambahan" pada akhirnya ditukar kepada sifar.
Penyelesaian . Import nombor panjang sebagai teks atau tukar format Nombor terus dalam Excel.
Import nombor panjang sebagai teks
Untuk memindahkan nombor besar daripada CSV ke Excel dengan tepat, jalankan Wizard Import Teks dan tetapkan format lajur sasaran kepada Teks .
Ini adalah satu-satunya penyelesaian sebenar untuk mengimport numerik dengan tepat rentetan tanpa kehilangan data, iaitu tanpa menggantikan digit ke-16 dan seterusnya dengan 0 atau mengalih keluar sifar pendahuluan. Ia berfungsi hebat untuk entri seperti id produk, nombor akaun, kod bar dan seumpamanya.
Walau bagaimanapun, jika nilai anda ialah nombor, bukan rentetan, ia bukanlah kaedah terbaik keranaanda tidak akan dapat melakukan sebarang matematik pada nilai teks yang terhasil.
Kaedah ini juga akan membantu anda menghalang pemformatan data automatik lain yang tidak diingini apabila menukar fail CSV.
Tukar format Nombor dalam Excel
Jika data anda sudah ada dalam Excel, anda boleh menukar format daripada Umum kepada sama ada Teks atau Nombor seperti yang ditunjukkan di bawah:
Nota. Kaedah ini tidak akan memulihkan sifar atau digit sebelumnya yang dipadamkan selepas kedudukan ke-15 yang digantikan dengan sifar.
Untuk mendapatkan maklumat lanjut, sila lihat Cara memformat sel dalam Excel.
Jadikan lajur lebih luas
Dalam kes paling mudah, apabila nombor mengandungi kurang daripada 15 digit, ia sudah memadai untuk membuat lajur lebih lebar sedikit untuk memaparkan nombor secara normal.
Untuk butiran lanjut, sila lihat Cara mengubah saiz dan lajur auto muat dalam Excel.
Itu bagaimana untuk menyelesaikan masalah paling biasa yang mungkin berlaku dengan penukaran CSV kepada Excel. Terima kasih kerana membaca dan jumpa minggu depan!