Excel hanya menempatkan tanda kutip di sekitar bidang tertentu, bagaimana cara memaksa excel untuk menyimpan file CSV dengan tanda kutip di setiap kolom?
Excel hanya menempatkan tanda kutip di sekitar bidang tertentu, bagaimana cara memaksa excel untuk menyimpan file CSV dengan tanda kutip di setiap kolom?
Jawaban:
Jika Anda membuka file XLS di LibreOffice atau OpenOffice, lalu Save As .... dan pilih Text CSV, itu akan menghasilkan file CSV yang juga menyertakan tanda kutip sebagai pembatas. Misalnya: "Smith", "Pete", "Kanada" "Jones", "Mary", "Inggris"
Centang saja kotak "Kutip semua sel teks":
Untuk juga mengutip bidang angka, sorot rentang sel Anda dan ubah pemformatan sel menjadi "teks" sebelum disimpan.
Halaman ini juga memiliki solusi yang datang langsung dari mulut kuda:
http://support.microsoft.com/kb/291296/en-us
Jika tautannya menurun, topik yang dicari adalah:
"Prosedur untuk mengekspor file teks dengan pembatas koma dan kutipan di Excel" dan / atau "Q291296"
tl; dr: gunakan makro mereka
Saya menemukan solusi mudah ini:
"''"@"''"
(lihat detail di bawah)String yang Anda tempel adalah "''"@"''"
kutipan ganda, kutipan tunggal, kutipan tunggal, kutipan ganda, @ simbol, kutipan ganda, kutipan tunggal, kutipan tunggal, kutipan ganda.
Diedit untuk Excel 2010 dari informasi yang ditemukan di sini .
\"@\"
Powershell tampaknya membuang dengan benar. jadi sesuatu seperti
mencari powershell.exe di mesin windows jika Anda tidak tahu PowerShell.
import-csv C:\Temp\Myfile.csv | export-csv C:\Temp\Myfile_New.csv -NoTypeInformation -Encoding UTF8
Semoga ini bisa membantu seseorang.
import-csv Myfile.csv | export-csv Myfile_quoted.csv -NoTypeInformation -Encoding UTF8
. ingatlah untuk menggunakan tanda kutip tunggal di sekitar nama file dengan spasi atau karakter khusus lainnya.
Ini yang paling mudah bagi saya: Saya mengimpor spreadsheet ke Access 2010 dan mengekspornya dari sana sebagai file teks yang dibatasi. Memberi saya tanda kutip di sekitar bidang saya. Membutuhkan kurang dari satu menit untuk baris 42k sekarang karena saya memiliki langkah-langkah ke bawah.
Saya telah menemukan pekerjaan lain yang tidak melibatkan Makro VBA, tetapi yang membutuhkan Notepad ++ atau editor teks berbasis makro yang serupa.
Ekspor file Anda sebagai teks yang dipisahkan Tab, kemudian buka file yang diekspor di dalam Notepad ++. Ganti semua instance karakter 'tab' dengan teks "," (yaitu kutipan ganda, koma, kutipan ganda) dan kemudian gunakan makro lain untuk awalan dan akhiran setiap baris teks dengan tanda kutip ganda.
Sedikit macet tapi saya menemukannya lebih cepat daripada membuat makro VBA berfungsi.
Sorot sel yang ingin Anda tambahkan tanda kutip. Buka Format -> Sel -> Salin Khusus / Tempel yang berikut ke dalam bidang Jenis: \ "@ \" Klik "oke". Berbahagialah Anda tidak melakukan semuanya dengan tangan.
Dari: http://www.lenashore.com/2012/04/how-to-add-quotes-to-your-cells-in-excel-automatically/
"''"@"''"
(lihat detail di bawah)' '
(kutipan tunggal berulang) dengan "
(kutipan ganda);
Jika Anda menggunakan Notepad ++ untuk menambahkan tanda kutip di awal setiap baris, cukup buka file csv yang diekspor, letakkan kursor Anda di baris 1, kolom 1, lalu klik menu Edit / Editor Kolom ... , di bidang ' Teks yang akan disisipkan ', masukkan " , maka awal setiap baris akan memiliki kutipan, maka Anda dapat menggunakan ekspresi reguler untuk mencari / mengganti semua tab.
Untuk pengguna Windows
Perhatikan ini bukan kutipan keyboard yang sama yang memiliki variasi forward & backward.
Jadi jika menggunakan CSV untuk memuat ke dalam tabel Mysql, potong dan tempel ke parameter ENCLOSED jika tidak, Anda akan bertanya-tanya mengapa Anda mendapatkan pesan#1083 - Field separator argument is not what is expected
Saya menggunakan pendekatan di bawah ini untuk mengambil tiga kolom di Excel dan membangun string di kolom keempat.
=CHAR(34)&A2&CHAR(34)&","&CHAR(34)&B2&CHAR(34)&","&CHAR(34)&C2&CHAR(34)&""
Masalah saya dengan "''"@"''"
pendekatan ini adalah kolom kedua dari data saya adalah angka yang "''"@"''"
tidak didekati oleh pendekatan tersebut. Terkadang kolom kedua kosong tetapi saya perlu memastikan itu diwakili dalam file teks akhir.
Cara lain jika Anda memiliki akses MS (I have ver 2007) impor file kemudian ekspor sebagai file teks. Kemudian ubah .txt ke .csv. Catatan semua bidang angka tidak akan memiliki tanda kutip ganda di sekitarnya sehingga jika Anda juga perlu tanda kutip ganda di sekitar angka, maka saat di Access ubah bidang dari bidang angka ke bidang teks.
Mengekspor string yang dipisah koma dan dikutip dapat dilakukan hanya dengan Excel 2016 dan Notepad, menggunakan salinan data, rumus, ekspor, perubahan properti file, penggantian Notepad, menyimpan file yang diekspor, dan pembersihan. Masing-masing adalah langkah sederhana. Secara terperinci:
Salin kolom yang akan diekspor ke lembar perantara baru untuk mempertahankan yang asli dan sebagai cadangan, dengan lembar baru yang akan dihapus nanti agar meninggalkan spreadsheet seperti sebelumnya.
Letakkan karakter lain yang tidak muncul, ucapkan '#' atau ';-)' di setiap ujung string di kolom mengatakan A dengan rumus =concat("#",trim(A1),"#")
, letakkan rumus di semua baris kolom lain.
Salin kembali kolom baru ke atas ..., menggunakan metode '123' agar tidak membawa formula.
Ekspor lembar sebagai file CSV, untuk memasukkan koma di antara bidang termasuk angka.
Ubah properti file.csv sehingga dapat dibuka dengan Notepad.
Gunakan Notepad untuk mengganti karakter yang berubah-ubah dengan '"'.
Meskipun tampaknya masuk akal untuk menggunakan "sebagai karakter sewenang-wenang, itu harus dimasukkan ke sel yang berbeda, katakan '$ A $ 50', dan kemudian apa yang muncul di ekspor adalah" "" "', tampaknya pemicu lain yang tidak nyaman.
Dalam notepad file harus disimpan, menjadi file * .txt yang akan diimpor dan perantara * .csv dihapus.
Dengan pembersihan misi lembar kerja lembar tambahan tercapai.
Mungkin alat ekspor akses suatu hari dapat tertanam di Excel. Pendekatan yang lebih umum di antara program-program yang menggunakan cut and paste, akan memiliki opsi tempel termasuk pilihan cara untuk menafsirkan struktur output dan menyediakan pembatas.
Jawaban Michael 21 Agustus 2014 sangat membantu. Namun, saya harus melakukan satu atau dua langkah tambahan:
Ini resep saya. Aku benci harus melakukan ini, tetapi aku tidak punya cara yang lebih baik. Dalam kasus saya, saya tidak mendapatkan penawaran di bidang apa pun. Saya juga perlu menggunakan pengkodean UTF-8 dan; bukannya tab, jadi ini yang akhirnya saya lakukan.
CATATAN: karena ilegibilitas menempatkan tanda kutip ganda yang dilingkupi oleh tanda kutip tunggal dan sebagainya, saya sengaja menggunakan "format keyboard" untuk menunjukkan penekanan tombol dan karakter serta string literal.
Saya telah mengalami masalah ini berkali-kali. Berikut adalah solusi paling sederhana yang saya buat.
Akses akan memungkinkan Anda menentukan pembatas ekspor sebagai bidang teks koma dan kualifikasi dengan tanda kutip. Di panduan ekspor, Anda bisa menentukan pembatas atau karakter apa pun di sekitar string yang Anda inginkan.
Anda mungkin perlu membuat kueri Access untuk mengatur bidang dalam urutan tertentu atau menyembunyikan bidang ID-otomatis yang ditambahkan oleh Access.
Juga ... setelah diekspor ke CSV, JANGAN buka lagi di Excel. Jika Anda ingin melihat hasilnya, buka di notepad. Excel memiliki kecenderungan untuk mengacaukan data csv .... Saya pikir itu adalah bidang yang diisi dengan nol di depan jika saya mengingat dengan benar.
Berikut cara menggunakan aplikasi OpenOffice untuk mengambil spreadsheet Excel dan membuat file teks (csv) dengan tanda kutip di sekitar setiap bidang teks.
Buka file Excel dengan OpenOffice, lalu ikuti langkah-langkah ini:
File> Simpan Sebagai
Berikan nama baru untuk file yang akan Anda buat
Untuk Jenis File, pilih "Tes CSV (.csv)"
aktifkan kotak centang "Edit Pengaturan Filter"
klik "Simpan"
pilih "Simpan format saat ini"
Pembatas bidang harus berupa koma:,
Pembatas teks harus tanda kutip: "
centang kotak "Kutip semua sel teks"
klik "OK"
Ini berhasil untuk saya!