ฉันเพิ่งได้รับคำวิงวอนที่บีบหัวใจนี้จากผู้อ่านที่เห็นได้ชัดว่าต้องดิ้นรนมาระยะหนึ่งแล้วและได้ผูกโยงจนสุดทางแล้ว: ฉันมีรายการผลิตภัณฑ์ที่เราขาย และหนึ่งในฟิลด์คือ UPC – ฟิลด์นี้ สามารถยาวได้ถึง 18 หลัก เมื่อฉันเพิ่มตัวเลขเกิน 15 หลัก Excel จะปัดเศษอัตโนมัติจากสามถึง 000 สุดท้าย หากฉันตั้งค่าฟิลด์นี้เป็นข้อความ มันจะเพิ่ม +E11 ที่ส่วนท้ายของสตริง ไม่สำคัญว่าฉันจะมีความกว้างของคอลัมน์ที่ยาวกว่าความยาวปกติสามเท่าหรือไม่ ฉันจะแก้ไขปัญหานี้ได้อย่างไร
ฉันแค่หวังว่า Excel จะทำตามที่บอกโดยไม่ต้องเพิ่มอะไรเข้าไป ตัวอย่างเช่น ถ้ารูปแบบเซลล์เป็น TEXT ก็ไม่ต้องจัดรูปแบบอะไรในนั้น! ดูเหมือนว่าฉันต้องใช้ Access เพื่อทำการเปลี่ยนแปลงเล็กน้อยในไฟล์ CSV เพื่อใช้ Access เป็นสเปรดชีตแทนสเปรดชีต ฉันต้องสงสัยว่า OpenOffice ทำเช่นเดียวกันหรือไม่
ไม่สำคัญว่าตัวเลขจะขนาดไหนหรือวางจุดทศนิยมไว้ที่ใด Excel จะเก็บเฉพาะตัวเลขนัยสำคัญ 15 หลักแรกและทิ้งส่วนที่เหลือทั้งหมด
วิธีทำให้หน้าต่างอยู่ด้านบนเสมอ
มีข้อจำกัดพื้นฐานบางประการสำหรับผลิตภัณฑ์ซอฟต์แวร์ใดๆ และ Excel ก็ไม่มีข้อยกเว้น Excel สามารถเก็บตัวเลขได้เพียง 15 ตัวเลขที่มีนัยสำคัญ เนื่องจากใช้ IEEE Floating Point Maths ซึ่งกำหนดวิธีที่ตัวเลข - ซึ่งอาจใหญ่ได้ถึง 1.79769313486231E+308 หรือเล็กเพียง 2.229E-308 - ถูกจัดเก็บโดยไม่ทำให้เวิร์กบุ๊กใช้กิกะไบต์ พื้นที่และใช้เวลาหลายชั่วโมงในการคำนวณใหม่ ข้อจำกัดนี้มีระบุไว้อย่างชัดเจนในข้อความช่วยเหลือของ Excel
โปรดทราบว่าตัวเลขที่มีนัยสำคัญไม่เหมือนกับตำแหน่งทศนิยม ไม่สำคัญว่าตัวเลขจะขนาดไหนหรือวางจุดทศนิยมไว้ที่ใด Excel จะเก็บเฉพาะตัวเลขนัยสำคัญ 15 หลักแรกและทิ้งส่วนที่เหลือทั้งหมด
UPC ย่อมาจาก Universal Product Code ซึ่งเป็นสัญลักษณ์หรือชื่อรหัสที่ประกอบด้วยตัวเลข แทนที่จะเป็นตัวเลขทางคณิตศาสตร์
การเพิ่มหรือการลบ UPC สองรายการไม่สมเหตุสมผลและไม่นำไปสู่รหัส UPC อื่นที่ถูกต้อง แม้ว่าแต่ละรหัสจะประกอบด้วยตัวเลขทั้งหมด หากคุณไม่ได้ทำคณิตศาสตร์ใดๆ กับข้อมูลของคุณ เช่นเดียวกับ UPC คุณสามารถบังคับให้ Excel จัดเก็บเป็นข้อความโดยพิมพ์เครื่องหมายอะพอสทรอฟีก่อนที่คุณจะพิมพ์ตัวเลขหลักแรก สิ่งนี้จะบอก Excel ว่าสิ่งที่คุณกำลังพิมพ์ไม่ใช่ตัวเลข แม้ว่าจะดูเหมือนตัวเลข และควรเก็บไว้เป็นข้อความ
อีกทางหนึ่ง ถ้าคุณจัดรูปแบบเซลล์เป็นข้อความ แล้วพิมพ์สตริงตัวเลขยาวๆ ลงในเซลล์ Excel จะทำสิ่งที่คุณคาดหวังและเก็บตัวเลขทั้งหมดไว้ เนื่องจากจะถือว่าเซลล์นั้นเป็นอักขระข้อความ ไม่ใช่ตัวเลข อย่างไรก็ตาม หากคุณลืมจัดรูปแบบเซลล์เป็นข้อความก่อนที่คุณจะพิมพ์ตัวเลข หรือถ้าคุณไม่พิมพ์เครื่องหมายอะพอสทรอฟีนำหน้า Excel จะถือว่าตัวเลขนั้นเป็นตัวเลข และเมื่อป้อนข้อมูลแล้ว ข้อมูลจะถูกตัดให้เหลือ 15 ตัวเลขสำคัญและคุณไม่สามารถกู้คืนตัวเลขที่หายไปได้
ยิ่งไปกว่านั้น การนำเข้าข้อมูลจากไฟล์ CSV ค่อนข้างแตกต่างจากการพิมพ์ข้อมูลลงใน Excel โดยตรง เนื่องจากไฟล์ CSV ไม่มีเบาะแสเกี่ยวกับรูปแบบของข้อมูลในฟิลด์ เมื่อคุณเพียงแค่ดับเบิลคลิกที่ไฟล์ CSV เพื่อเปิดใน Excel หรือเมื่อคุณใช้ไฟล์ของ Excel | เปิดกล่องโต้ตอบ Excel จะเดาว่าฟิลด์ใด ๆ ที่มีตัวเลขทั้งหมดจะถือเป็นตัวเลข ซึ่งบ่อยกว่าไม่ต้องการ ไม่สำคัญว่าฟิลด์เหล่านั้นจะอยู่ในเครื่องหมายคำพูดหรือไม่ หากเป็นตัวเลขทั้งหมด Excel จะถือว่ามันเป็นตัวเลข
อย่างไรก็ตาม หากแทนที่จะเปิดไฟล์ CSV คุณคลิก Data | รับข้อมูลภายนอก | จากข้อความ คุณจะสามารถควบคุมกระบวนการนำเข้าและสามารถเลือกรูปแบบสำหรับแต่ละคอลัมน์ของข้อมูลได้ ดังนั้นคุณจึงสามารถบอก Excel ได้ว่าสตริงตัวเลขแบบยาวของคุณควรใช้เป็นข้อความ ไม่ใช่เป็นตัวเลข
OpenOffice ตั้งสมมติฐานเหมือนกันทุกประการ: เมื่อใดก็ตามที่คุณพิมพ์หรือนำเข้าข้อมูลที่ดูเหมือนตัวเลข ทั้ง OpenOffice และ Excel จะถือว่าเป็นตัวเลขตามค่าเริ่มต้น และหากคุณต้องการแทนที่สมมติฐานที่สมเหตุสมผลอย่างสมบูรณ์ คุณจะต้องให้ สมัครช่วยเหลือบางอย่าง