Excel mengonversi nilai 0503E000 menjadi 5.03E + 02 di sel mana pun secara otomatis di CSV. Saya mencoba mengonversinya menjadi nomor teks dan umum tetapi setelah saya simpan dan buka kembali lagi kembali ke 5.03E + 02
Bagaimana saya menghentikan ini terjadi?
microsoft-excel
csv
xls
CrashOverride
sumber
sumber
DEC2HEX
danHEX2DEC
string untuk nomor asli (misalnya=DEC2HEX(HEX2DEC("0503E000"))
untuk contoh Anda). Mungkin tidak membantu jika Anda perlu memanipulasi file csv tanpa mengandung formula, tapi itu pilihan lain selain memformat sebagai teks.Jawaban:
Saya pikir masalah utama di sini adalah bahwa Anda menggunakan CSV, yang tidak memiliki tipe sel yang tertanam di dalamnya. Excel secara otomatis mencoba menafsirkan sel sebagai memiliki nomor ilmiah yang mengapa Anda melihat 5.03E + 02 bukannya 0503E000 .
Coba buat buku kerja Excel dan format semua sel sebagai teks, lalu tempelkan dalam data. Saya mencobanya di Excel 2013 dan berhasil.
sumber
Jika Anda bisa mengonversi atau mengontrol format CSV , Anda bisa memaksa kolom untuk mem-parsing sebagai teks dalam Excel dengan membungkusnya dalam tanda kutip ganda dan menambahkan tanda sama dengan.
Excel akan secara sembarangan membuang presisi dalam format ini:
Atau bahkan format ini:
Mengubahnya menjadi:
Namun , menambahkan tanda sama dengan memaksa Excel untuk menjaga data Anda secara hati-hati:
... yang terbuka sebagai:
sumber
Alih-alih membuka "file CSV di Excel, pilih untuk Mengimpor file (di Excel 2007-2010 Anda akan menavigasi ke Ribbon Data / Dapatkan Data Eksternal / Dari Teks). Tidak yakin tentang 2013 tetapi harus ada sesuatu yang serupa. Ketika Anda melakukannya, panduan Impor Teks akan terbuka dan memberi Anda kesempatan untuk memformat kolom yang berisi Nilai itu sebagai Teks, sebelum Excel (tidak begitu membantu) mengubahnya menjadi nilai numerik.
sumber
this
, sisanya akan menjadi jelas. Kira saya mulai tua :-(Mulai sel dengan tanda kutip untuk memaksa interpretasi teks:
Pada dasarnya, ini memberitahu Excel untuk tidak mem-parsing bidang sebagai angka. Karena ada 'E' di bidang, sepertinya angka ke Excel. Apostrof tidak akan benar-benar dimasukkan ke dalam sel:
Sel 'b1' akan menampilkan 84074496.
sumber
Cobalah untuk memuat file (data diambil dari tabel DB) melalui opsi DATA di MS excel kemudian cukup saat memuat cukup pilih "Jangan mendeteksi tipe data" di bawah "Deteksi Tipe Data" kemudian memuat, ini akan tetap seperti format data dan memuat excel, tidak perlu untuk konversi kolom apa pun.
sumber
Rekatkan data ke dalam spreadsheet google. Pilih kolom ==> Format ==> Number => Format khusus => ketikkan jumlah digit yang Anda inginkan formatnya terjadi (mis: 10 digit = 0000000000)
sumber
Dengan pemformatan sel default, angka dengan angka nol di depan dan panjang akan secara otomatis dimodifikasi oleh Excel. Misalnya, jika Anda mengetik 012, itu akan berubah menjadi 12.
Jika Anda memformat sel sebagai Teks , maka angka apa pun yang Anda ketikkan dalam sel akan tetap apa adanya, dan tidak akan dimodifikasi oleh Excel.
Namun, jika Anda menempelkan nomor dari sumber lain ke dalam sel yang diformat sebagai Teks , dan di sumber itu ada semacam pemformatan, pemformatan sel akan berubah dari Teks ke Umum , dan manipulasi angka akan kembali.
Solusi yang saya temukan adalah melakukan paste khusus, dan menempelkan nomor sebagai Teks . Kemudian sel tetap dengan nya Text format, dan jumlah ini tidak diubah sama sekali.
sumber