วิธีการบังคับให้ Excel เปิดไฟล์ CSV โดยมีการจัดเรียงข้อมูลในคอลัมน์


32

ฉันสร้างไฟล์ CSV ที่มีนามสกุล. csv ซึ่งข้อมูลทุกส่วนในหนึ่งบรรทัดถูกคั่นด้วยเครื่องหมายจุลภาค:

1,2,3,4
1,2,3,4

ไฟล์ถูกส่งทางอีเมลและฉันต้องการให้ลูกค้าเปิดขึ้นเมื่อเธอเห็นข้อมูลถูกจัดเรียงไว้ในคอลัมน์

เป็นไปได้ไหม

PS: ฉันอาจเปลี่ยน delimeter ได้อย่างอิสระ


1
เท่าที่ฉันกังวลคุณไม่สามารถทำอะไรได้นอกจากการนำเข้าข้อมูลไปยัง Excel เนื่องจาก Excel ไม่สามารถทำการสันนิษฐานเกี่ยวกับโครงสร้างของข้อมูลเองได้ (เช่นตัวคั่นที่ใช้รูปแบบทศนิยมหรือรูปแบบทั่วไป จากข้อมูล)
slhck

@slhck โปรดดูคำตอบ
Timofey

โอ้ฉันไม่รู้ว่า Excel สามารถทำสิ่งนี้ได้ ทำได้ดีนี่.
slhck

1
เพียงคลิกสองครั้งที่ไฟล์ CSV ระบบจะเปิด Excel และไฟล์จะแสดงอย่างถูกต้อง ฉันถูกไหม?
สัน

@wilson: Excel ต้องเชื่อมโยงกับเปิดไฟล์. csv จากนั้นดับเบิลคลิกที่ไฟล์. csv excel จะถูกเปิดใช้งาน
Timofey

คำตอบ:


10

ใช้แท็บแทนเครื่องหมายจุลภาค และหากยังใช้งานไม่ได้ให้นามสกุล xls ของไฟล์เป็นตัวคั่น


ขอบคุณสำหรับการแก้ปัญหาผมออกจาก .csv เป็นไฟล์นามสกุล
Timofey

ไม่ทำงานสำหรับ excel 14.7.1 บน mac (2017)
masukomi

3
"PS: ฉันสามารถเปลี่ยน delimeter ได้อย่างอิสระ" ทำให้คำตอบนี้ถูกต้องน้อยกว่า
Paul Fijma

สิ่งนี้จะไม่ตอบวิธีโหลดไฟล์ CSV เนื่องจาก C ย่อมาจากเครื่องหมายจุลภาค
JBernardo

@Bernardo มันทำครั้งเดียว แต่วันนี้คุณจะพบไฟล์ที่มีนามสกุล csv อยู่ในป่าพร้อมกับตัวคั่นทุกชนิด: แท็บ, ไพพ์, คอมม่า, เครื่องหมายขีดกลาง, @, \ 0, อื่น ๆ ถูกหรือผิดพวกเขาอยู่ที่นั่น และส่วนหนึ่งของคำถามที่ว่า "ฉันอาจเปลี่ยนตัวคั่น" ทำให้คำตอบนี้ใช้ได้
Joel Coehoorn

43

ถ้ามันเป็นเพียงเพื่อให้ได้csv อ่านได้SEP=;ในทุกระบบมีเคล็ดลับที่ไม่มีเอกสารในการเขียนบรรทัดแรก บรรทัดนี้บอก EXCEL ว่าอักขระใดที่จะใช้เป็นตัวคั่น (ที่จริงแล้วคุณสามารถใช้อักขระใด ๆ (Single) ( ;,|@#'... ))

หมายเหตุ: บรรทัดนี้เป็นเพียงส่วนหนึ่งของcsvไฟล์เอง มันจะไม่กลายเป็นส่วนหนึ่งของสเปรดชีตใน EXCEL ซึ่งหมายความว่าจะไม่แสดงและจะไม่ถูกเขียนไม่ว่าคุณจะกำหนดรูปแบบการเขียนหรือส่งออกก็ตาม


นี่เป็นการช่วยชีวิต! ทำงานได้ดีที่นี่!
Etienne Dupuis

ทางออกที่ดีที่สุด IMHO เพราะควรทำงานกับทุกภาษา
mBardos

39

พฤติกรรมของ Excel เมื่อเปิดไฟล์ CSV หนักขึ้นอยู่กับการตั้งค่าท้องถิ่นของคุณและสินค้าภายใต้list separator Region and language » Formats » Advancedตามค่าเริ่มต้น Excel จะถือว่าทุก CSV ถูกบันทึกด้วยตัวคั่นนั้น สิ่งใดเป็นจริงตราบใดที่ CSV ไม่ได้มาจากประเทศอื่น!

หากลูกค้าของคุณอยู่ในประเทศอื่นพวกเขาอาจเห็นผลลัพธ์อื่นคุณคิดว่า

ตัวอย่างเช่นที่นี่คุณจะเห็นว่า Excel ของเยอรมันจะใช้เครื่องหมายอัฒภาคแทนเครื่องหมายจุลภาคเหมือนในสหรัฐอเมริกา ป้อนคำอธิบายรูปภาพที่นี่

เพื่อสร้างความสับสนให้คุณมากยิ่งขึ้นการตั้งค่านั้นรบกวนสัญลักษณ์ทศนิยมซึ่งสามารถตั้งค่าแยกต่างหากภายใต้Excel Options » Advanced » Use system separatorsหรือผ่านการตั้งค่าภูมิภาคตามที่แสดงด้านบน Excel ไม่สามารถใช้สัญลักษณ์เดียวกับแท็บทศนิยมและตัวคั่นรายการ มันจะใช้เครื่องหมายจุลภาคหรืออัฒภาคโดยอัตโนมัติเป็นตัวแยกสำรอง อ่านเพิ่มเติม

ฉันจะยกตัวอย่างของคุณเพื่อสร้าง 3 ไฟล์ แต่ละอันมีตัวคั่นที่แตกต่างกันและเปิดด้วย Excel

    COMMA               SEMICOLON                     TAB 

ป้อนคำอธิบายรูปภาพที่นี่ป้อนคำอธิบายรูปภาพที่นี่ป้อนคำอธิบายรูปภาพที่นี่

ไม่เหมือนกับ Excel ของคุณใช่ไหม ฉันคิดอย่างนั้น

ดังนั้นให้เปลี่ยนนามสกุลจากไฟล์ CSV เดียวกันเป็น XLS ด้วยตนเองและดูว่าเกิดอะไรขึ้นตอนนี้ อันดับแรก Excel จะส่งคำเตือนว่าส่วนขยายไฟล์ไม่ตรงกับเนื้อหาและ Excel พยายามคาดเดาสิ่งที่อยู่ภายใน

    COMMA        SEMICOLON                   TAB 

ป้อนคำอธิบายรูปภาพที่นี่ป้อนคำอธิบายรูปภาพที่นี่ป้อนคำอธิบายรูปภาพที่นี่

สรุป: TAB + การเปลี่ยนชื่อ + ละเว้นคำเตือน = ชนะในทุกระบบหรือไม่
อาจจะ แต่ฉันอาจไม่แน่ใจสำหรับลูกค้าที่อยู่นอกประเทศของคุณ

วิธีที่ดีที่สุดคือการแนะนำให้ลูกค้าของคุณเปิด Excel เปล่าก่อนจากนั้นไปที่Data » Get data from textและเลือกเครื่องหมายจุลภาคเป็นตัวคั่นด้วยตนเอง


2
คำตอบนี้ดีมาก แต่ฉันพบว่าน่าสงสารจาก Microsoft คุณเปิด csv ใน Numbers และเปิดอย่างถูกต้อง คุณเปิดมันใน Google ชีตและมันเปิดอย่างถูกต้อง จากนั้นคุณเปิดใน Excel ซึ่งเป็นคนเดียวที่คุณจ่ายและ ... ไม่มีอะไร แล้วพวกเราที่ไม่เคยตั้งตัวแยกรายชื่อล่ะ? ตอนนี้ฉันต้องเสียเวลาพยายามทำให้มันใช้งานได้เพราะ "จุลภาค" ไม่มีความหมายใน "csv" นี้ น่าผิดหวังมาก
แตะ

> วิธีนี้ใช้ได้กับฉัน (excel 2013) ฉันปรับรูปแบบภูมิภาคของฉัน: ฉันตั้งจุด (.) เป็น "ตัวคั่นทศนิยม", เครื่องหมายจุลภาค (,) เป็น "ตัวคั่นหลักพัน" และเครื่องหมายจุลภาค (,) เป็น "ตัวคั่นรายการ" - cesargastonec 13 กรกฎาคม 2558 เวลา 16: 05
Alex78191

หรือคุณสามารถเปลี่ยนตัวคั่นทศนิยมในตัวเลือกของ Excel superuser.com/a/1470373
Alex78191

1

คุณสามารถแทนที่ ".csv" โดย ".txt" เริ่ม Excel และเปิดไฟล์. txt นั้น จากนั้น Excel จะแสดงผู้ช่วยที่คุณสามารถระบุให้ใช้ "," เป็นตัวคั่น เมื่อคุณบันทึกไฟล์นี้เป็น. csv อีกครั้งในครั้งถัดไปที่ Excel จะเปิดในแบบที่คุณต้องการ


0

อีกวิธีที่ฉันใช้ในสถานการณ์นี้คือการส่งออกไฟล์ HTML พื้นฐานแทนที่จะเป็น CSV Excel สามารถเปิดสิ่งนี้ได้โดยไม่มีข้อผิดพลาด สามารถอ่านการจัดรูปแบบบางอย่างในไฟล์ได้


0

นี่เป็นคำตอบที่โง่ที่สุดที่เคยทำ ฉันใช้ไฟล์ CSV ทุกวัน ฉันสร้างพวกเขาตลอดเวลาและดูด้วย excel วันนี้หลังจาก 12 ปีที่ไม่เคยพบปัญหานี้มันเกิดขึ้นกับฉัน มันจะไม่เปิดไฟล์ csv และจัดรูปแบบคอลัมน์ แม้ไฟล์ csv บางไฟล์ที่ฉันสร้างเมื่อคืนด้วย excel จะเปิดเป็นหนึ่งคอลัมน์ต่อบรรทัด

วิธีแก้ไข: ตรวจสอบตัวจัดการงานสำหรับอินสแตนซ์ที่เปิดอยู่ทั้งหมดของ Excel.exe ปิดการใช้งานอินสแตนซ์ทั้งหมดและลองเปิดไฟล์ csv อีกครั้ง

facepalm


0

ในระยะสั้นหากคุณต้องการเปิดไฟล์ CSV ที่ส่งถึงคุณจากประเทศอื่น -

เปิดไฟล์ใน wordpad และใช้การค้นหาและแทนที่เพื่อเปลี่ยนตัวคั่นทุกตัวที่ประเทศผู้ออกใช้ (เช่น.;) และแทนที่ด้วยเครื่องหมายจุลภาค (เช่น ,).

เพียงตรวจสอบว่าประเทศที่ออกไม่ได้ใช้เครื่องหมายจุลภาคแทนสัญลักษณ์อื่น (เช่นในสเปนพวกเขาใช้เครื่องหมายจุลภาคที่เราใช้ตำแหน่งทศนิยมดังนั้นคุณจะต้องค้นหาและแทนที่เครื่องหมายจุลภาคเป็นทศนิยมแล้วค้นหาและแทนที่สัญลักษณ์อื่น ๆ ด้วยเครื่องหมายจุลภาค)

ไม่ใช่วิธีแก้ปัญหาในระยะยาว แต่ก็ดีพอที่จะทำให้ตัวเองสามารถอ่านไฟล์ได้ถ้าคุณรีบและไม่สามารถเข้าถึงแผงควบคุมในที่ทำงาน


0

ฉันมามากกว่าปัญหาเดียวกัน ฉันมีไฟล์ CSV ที่ Excel แยกวิเคราะห์ผิดและต้องการตัวช่วยสร้างการนำเข้า

การแก้ไขอย่างง่ายคือการเปลี่ยนชื่อ CSV เป็น TXT และตัวช่วยสร้างขึ้นมาช่วยในการจดจำโครงสร้างคอลัมน์อย่างถูกต้อง


0

คำตอบที่เกี่ยวข้องกับเรื่องนี้ - โดยเฉพาะอย่างยิ่งสำหรับปัญหา MacOS / OSX กับการจดจำเครื่องหมายจุลภาค:
ในExcel 2019 ไม่เปิด CSV อย่างถูกต้อง - ไม่แยกคอลัมน์: /superuser//a/1506042/1116939

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.