This is working for me, but the file extension is not changing. Any tips?
-
To post as a guest, your comment is unpublished.
-
To post as a guest, your comment is unpublished.
ในการแปลงไฟล์ CSV เป็นไฟล์ XlS หรือ XLSX นั้นง่ายมากสำหรับคุณโดยใช้คุณสมบัติบันทึกเป็น อย่างไรก็ตามในการแปลงไฟล์ CSV หลายไฟล์เป็นไฟล์ XLS หรือ XLSX จากโฟลเดอร์นั้นใช้เวลานานโดยการบันทึกทีละไฟล์ด้วยตนเอง ที่นี่ฉันแนะนำรหัสมาโครเพื่อแปลงไฟล์ CSV ทั้งหมดเป็นไฟล์ XLS (x) จากโฟลเดอร์ได้อย่างรวดเร็ว
Batch แปลงไฟล์ CSV เป็นไฟล์ XlS (X) ด้วยรหัสมาโคร
ในการแปลงไฟล์ CSV หลายไฟล์จากโฟลเดอร์หนึ่งเป็นไฟล์ XLS (X) คุณสามารถทำได้ตามขั้นตอนด้านล่าง:
1. เปิดใช้งานสมุดงานใหม่กด Alt + F11 กุญแจเพื่อเปิด Microsoft Visual Basic สำหรับแอปพลิเคชัน หน้าต่างแล้วคลิก สิ่งที่ใส่เข้าไป > โมดูล. ดูภาพหน้าจอ:
หมายเหตุ: ตรวจสอบให้แน่ใจว่าไฟล์ CSV ทั้งหมดที่คุณต้องการแปลงปิดอยู่
2. จากนั้นวางโค้ดมาโครด้านล่างลงในไฟล์ โมดูล สคริปต์และกด F5 กุญแจสำคัญในการเรียกใช้รหัส
VBA: แปลง CSV เป็น XLS
Sub CSVtoXLS() 'UpdatebyExtendoffice20170814 Dim xFd As FileDialog Dim xSPath As String Dim xCSVFile As String Dim xWsheet As String Application.DisplayAlerts = False Application.StatusBar = True xWsheet = ActiveWorkbook.Name Set xFd = Application.FileDialog(msoFileDialogFolderPicker) xFd.Title = "Select a folder:" If xFd.Show = -1 Then xSPath = xFd.SelectedItems(1) Else Exit Sub End If If Right(xSPath, 1) <> "\" Then xSPath = xSPath + "\" xCSVFile = Dir(xSPath & "*.csv") Do While xCSVFile <> "" Application.StatusBar = "Converting: " & xCSVFile Workbooks.Open Filename:=xSPath & xCSVFile ActiveWorkbook.SaveAs Replace(xSPath & xCSVFile, ".csv", ".xls", vbTextCompare), xlNormal ActiveWorkbook.Close Windows(xWsheet).Activate xCSVFile = Dir Loop Application.StatusBar = False Application.DisplayAlerts = True End Sub
3. ในกล่องโต้ตอบเปิดขึ้นให้เลือกโฟลเดอร์ที่ระบุซึ่งมีไฟล์ CSV ที่คุณต้องการแปลง ดูภาพหน้าจอ:
4 คลิก OKไฟล์ CSV ทั้งหมดในโฟลเดอร์ที่เลือกได้รับการแปลงเป็นไฟล์ XLS แล้ว
ปลาย: หากคุณต้องการแปลงไฟล์ CSV เป็นไฟล์ XLSX ให้ใช้โค้ด VBA ด้านล่าง
VBA: แปลงไฟล์ CSV เป็น XLSX
Sub CSVtoXLS() 'UpdatebyExtendoffice20170814 Dim xFd As FileDialog Dim xSPath As String Dim xCSVFile As String Dim xWsheet As String Application.DisplayAlerts = False Application.StatusBar = True xWsheet = ActiveWorkbook.Name Set xFd = Application.FileDialog(msoFileDialogFolderPicker) xFd.Title = "Select a folder:" If xFd.Show = -1 Then xSPath = xFd.SelectedItems(1) Else Exit Sub End If If Right(xSPath, 1) <> "\" Then xSPath = xSPath + "\" xCSVFile = Dir(xSPath & "*.csv") Do While xCSVFile <> "" Application.StatusBar = "Converting: " & xCSVFile Workbooks.Open Filename:=xSPath & xCSVFile ActiveWorkbook.SaveAs Replace(xSPath & xCSVFile, ".csv", ".xlsx", vbTextCompare), xlWorkbookDefault ActiveWorkbook.Close Windows(xWsheet).Activate xCSVFile = Dir Loop Application.StatusBar = False Application.DisplayAlerts = True End Sub
แปลงหรือส่งออกช่วงของแผ่นงานอย่างรวดเร็วเพื่อแยก XLS / Word / PDF หรือไฟล์รูปแบบอื่น ๆ ในครั้งเดียว
|
โดยปกติ Excel ไม่สนับสนุนคุณด้วยตัวเลือกในการส่งออกหรือบันทึกช่วงเป็นไฟล์ CSV หรือ Excel อย่างรวดเร็ว ถ้าคุณต้องการบันทึกช่วงของข้อมูลเป็น CSV หรือสมุดงานใน Excel คุณอาจต้องใช้ VBA Macro เพื่อทำสิ่งนี้หรือคัดลอกช่วงไปยังคลิปบอร์ดแล้ววางลงในสมุดงานใหม่จากนั้นบันทึกสมุดงานเป็น CSV หรือ สมุดงาน Kutools สำหรับ Excel เพิ่ม Excel ด้วย ส่งออกช่วงไปยังไฟล์ ยูทิลิตี้สำหรับผู้ใช้ Excel ที่ต้องการดำเนินการดังต่อไปนี้อย่างรวดเร็ว: คลิกเพื่อทดลองใช้ฟรี 30 วันเต็ม! |
![]() |
Kutools for Excel: มีโปรแกรมเสริม Excel ที่มีประโยชน์มากกว่า 300 รายการให้ทดลองใช้ฟรีโดยไม่มีข้อ จำกัด ใน 30 วัน |