Note: The other languages of the website are Google-translated. Back to English
English English

วิธีการแปลงไฟล์ CSV หลายไฟล์เป็นไฟล์ XLS (X) ใน Excel

ในการแปลงไฟล์ CSV เป็นไฟล์ XlS หรือ XLSX นั้นง่ายมากสำหรับคุณโดยใช้คุณสมบัติบันทึกเป็น อย่างไรก็ตามในการแปลงไฟล์ CSV หลายไฟล์เป็นไฟล์ XLS หรือ XLSX จากโฟลเดอร์นั้นใช้เวลานานโดยการบันทึกทีละไฟล์ด้วยตนเอง ที่นี่ฉันแนะนำรหัสมาโครเพื่อแปลงไฟล์ CSV ทั้งหมดเป็นไฟล์ XLS (x) จากโฟลเดอร์ได้อย่างรวดเร็ว

Batch แปลงไฟล์ CSV เป็นไฟล์ XlS (X) ด้วยรหัสมาโคร


Batch แปลงไฟล์ CSV เป็นไฟล์ XlS (X) ด้วยรหัสมาโคร

ในการแปลงไฟล์ CSV หลายไฟล์จากโฟลเดอร์หนึ่งเป็นไฟล์ XLS (X) คุณสามารถทำได้ตามขั้นตอนด้านล่าง:

1. เปิดใช้งานสมุดงานใหม่กด Alt + F11 กุญแจเพื่อเปิด Microsoft Visual Basic สำหรับแอปพลิเคชัน หน้าต่างแล้วคลิก สิ่งที่ใส่เข้าไป > โมดูล. ดูภาพหน้าจอ:
doc batch แปลง cvs xls 1

หมายเหตุ: ตรวจสอบให้แน่ใจว่าไฟล์ 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 ที่คุณต้องการแปลง ดูภาพหน้าจอ:
doc batch แปลง cvs xls 2

4 คลิก OKไฟล์ CSV ทั้งหมดในโฟลเดอร์ที่เลือกได้รับการแปลงเป็นไฟล์ XLS แล้ว
doc batch แปลง cvs xls 3

ปลาย: หากคุณต้องการแปลงไฟล์ 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 วันเต็ม!
doc ส่งออกช่วงเซลล์ไปยังไฟล์
 
Kutools for Excel: มีโปรแกรมเสริม Excel ที่มีประโยชน์มากกว่า 300 รายการให้ทดลองใช้ฟรีโดยไม่มีข้อ จำกัด ใน 30 วัน

บทความญาติ:


เครื่องมือเพิ่มประสิทธิภาพการทำงานในสำนักงานที่ดีที่สุด

Kutools สำหรับ Excel ช่วยแก้ปัญหาส่วนใหญ่ของคุณและเพิ่มผลผลิตของคุณได้ถึง 80%

  • นำมาใช้ใหม่: ใส่อย่างรวดเร็ว สูตรที่ซับซ้อนแผนภูมิ และสิ่งที่คุณเคยใช้มาก่อน เข้ารหัสเซลล์ ด้วยรหัสผ่าน; สร้างรายชื่อผู้รับจดหมาย และส่งอีเมล ...
  • ซุปเปอร์ฟอร์มูล่าบาร์ (แก้ไขข้อความและสูตรหลายบรรทัดได้อย่างง่ายดาย); การอ่านเค้าโครง (อ่านและแก้ไขเซลล์จำนวนมากได้อย่างง่ายดาย); วางลงในช่วงที่กรองแล้ว...
  • ผสานเซลล์ / แถว / คอลัมน์ โดยไม่สูญเสียข้อมูล แยกเนื้อหาของเซลล์ รวมแถว / คอลัมน์ที่ซ้ำกัน... ป้องกันเซลล์ซ้ำ; เปรียบเทียบช่วง...
  • เลือกซ้ำหรือไม่ซ้ำ แถว; เลือกแถวว่าง (เซลล์ทั้งหมดว่างเปล่า); Super Find และ Fuzzy Find ในสมุดงานจำนวนมาก สุ่มเลือก ...
  • สำเนาถูกต้อง หลายเซลล์โดยไม่เปลี่ยนการอ้างอิงสูตร สร้างการอ้างอิงอัตโนมัติ ถึงหลายแผ่น ใส่สัญลักษณ์แสดงหัวข้อย่อย, กล่องกาเครื่องหมายและอื่น ๆ ...
  • แยกข้อความ, เพิ่มข้อความ, ลบตามตำแหน่ง, ลบ Space; สร้างและพิมพ์ผลรวมย่อยของเพจ แปลงระหว่างเนื้อหาของเซลล์และความคิดเห็น...
  • ซุปเปอร์ฟิลเตอร์ (บันทึกและใช้โครงร่างตัวกรองกับแผ่นงานอื่น ๆ ); การเรียงลำดับขั้นสูง ตามเดือน / สัปดาห์ / วันความถี่และอื่น ๆ ตัวกรองพิเศษ โดยตัวหนาตัวเอียง ...
  • รวมสมุดงานและแผ่นงาน; ผสานตารางตามคอลัมน์สำคัญ แยกข้อมูลออกเป็นหลายแผ่น; Batch แปลง xls, xlsx และ PDF...
  • คุณสมบัติที่ทรงพลังมากกว่า 300 รายการ. รองรับ Office / Excel 2007-2019 และ 365 รองรับทุกภาษา ใช้งานง่ายในองค์กรหรือองค์กรของคุณ ทดลองใช้ฟรี 30 วันเต็ม รับประกันคืนเงิน 60 วัน
kte แท็บ 201905

แท็บ Office นำอินเทอร์เฟซแบบแท็บมาที่ Office และทำให้งานของคุณง่ายขึ้นมาก

  • เปิดใช้งานการแก้ไขและอ่านแบบแท็บใน Word, Excel, PowerPoint, ผู้จัดพิมพ์, Access, Visio และโครงการ
  • เปิดและสร้างเอกสารหลายรายการในแท็บใหม่ของหน้าต่างเดียวกันแทนที่จะเป็นในหน้าต่างใหม่
  • เพิ่มผลผลิตของคุณ 50% และลดการคลิกเมาส์หลายร้อยครั้งให้คุณทุกวัน!
ด้านล่าง officetab
จัดเรียงความคิดเห็นโดย
ความคิดเห็น (37)
ยังไม่มีการให้คะแนน เป็นคนแรกที่ให้คะแนน!
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ฉันต้องการทำตรงกันข้าม - แปลง XLS เป็น CSV สคริปต์นี้ทำงานหรือไม่
ย่อย CSVtoXLS()
'UpdatebyExtendoffice20170814
Dim xFd เป็น FileDialog
Dim xSPath เป็นสตริง
Dim xXLSFile เป็นสตริง
Dim xWsheet เป็นสตริง
Application.DisplayAlerts = เท็จ
Application.StatusBar = จริง
xWsheet = ActiveWorkbook.Name
ตั้งค่า xFd = Application.FileDialog(msoFileDialogFolderPicker)
xFd.Title = "เลือกโฟลเดอร์:"
ถ้า xFd.Show = -1 แล้ว
xSPath = xFd.รายการที่เลือก(1)
อื่น
ออกจาก Sub
End If
ถ้าใช่ (xSPath, 1) <> "\" แล้ว xSPath = xSPath + "\"
xXLSFile = Dir(xSPath & "*.xls")
ทำในขณะที่ xXLSFile <> ""
Application.StatusBar = "กำลังแปลง: " & xXLSFile
Workbooks.Open ชื่อไฟล์:=xSPath & xXLSFile
ActiveWorkbook.SaveAs แทนที่ (xSPath & xXLSFile, ".xls", ".csv", vbTextCompare), xlNormal
ActiveWorkbook ปิด
Windows(xWsheet) เปิดใช้งาน
xXLSFile = ผบ
ห่วง
Application.StatusBar = เท็จ
Application.DisplayAlerts = จริง
ย่อยสิ้นสุด
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
แปลงย่อยCSVToXlsx()



Dim myfile เป็นสตริง

หรี่ oldfname As String, newfname As String

ไฟล์งานติ่มซำ

ชื่อโฟลเดอร์ Dim As String



Application.DisplayAlerts = เท็จ

Application.ScreenUpdating = เท็จ



' จับภาพชื่อไฟล์ปัจจุบัน

myfile = ActiveWorkbook.Name



' ตั้งชื่อโฟลเดอร์ให้ทำงาน

folderName = "D:\tmp\"



' วนรอบไฟล์ CSV ทั้งหมดในโฟลเดอร์

workfile = Dir (ชื่อโฟลเดอร์ & "*.CSV")

ทำในขณะที่ไฟล์งาน <> ""

' เปิดไฟล์ CSV

Workbooks.Open ชื่อไฟล์:=folderName & workfile

' จับภาพชื่อไฟล์ CSV เก่า

oldfname = ActiveWorkbook.ชื่อเต็ม

' แปลงเป็น XLSX

newfname = folderName & Left(ActiveWorkbook.Name, Len(ActiveWorkbook.Name) - 4) & ".xlsx"

ActiveWorkbook.SaveAs ชื่อไฟล์:=newfname, FileFormat:=xlOpenXMLWorkbook, CreateBackup:=True

ActiveWorkbook ปิด

' ลบไฟล์ CSV เก่า

ฆ่า oldfname

Windows(myfile) เปิดใช้งาน

ไฟล์งาน = Dir()

ห่วง



Application.DisplayAlerts = จริง

Application.ScreenUpdating = จริง



ย่อยสิ้นสุด
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
"เคล็ดลับ: หากคุณต้องการแปลงไฟล์ CSV เป็นไฟล์ XLXS คุณเพียงแค่ต้องเปลี่ยน .xls เป็น .xlsx ในมาโคร ActiveWorkbook.SaveAs Replace(xSPath & xCSVFile, ".csv", ".xls", vbTextCompare)"

ฉันลองแล้ว Excel ไม่สามารถเปิดไฟล์ผลลัพธ์ได้ ฉันได้รับข้อความต่อไปนี้: "Excel ไม่สามารถเปิดไฟล์ 'filename.xlsx' ได้ เนื่องจากรูปแบบไฟล์หรือนามสกุลไฟล์ไม่ถูกต้อง ตรวจสอบว่าไฟล์ไม่เสียหายและนามสกุลไฟล์ตรงกับรูปแบบของไฟล์"

อย่างไรก็ตาม สคริปต์นี้ประสบความสำเร็จในการแปลงเป็น .xls
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ฉันไม่พบปัญหานั้นมาก่อน ขอบคุณสำหรับความคิดเห็นที่ถูกต้อง ฉันได้แก้ไขเคล็ดลับ
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์

ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ขอบคุณมากสำหรับสคริปต์ที่ยอดเยี่ยมของคุณสำหรับ CSV ถึง XLS มีประโยชน์กับงานมากกว่ามาก
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
สวัสดี

สคริปต์ของคุณดีมากแต่ไม่ได้แปลง csv โดยคั่นด้วยเครื่องหมายอัฒภาค คุณช่วยกรุณาโพสต์วิธีแก้ปัญหาเหล่านั้นได้ไหม

ขอขอบคุณ
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ขออภัย ฉันไม่มีวิธีแก้ปัญหา บางทีคุณสามารถส่งคำถามของคุณไปที่ฟอรัมของเรา คนอื่นอาจช่วยคุณได้ https://www.extendoffice.com/forum.html
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ฉันอาจจะสายฉันเพิ่งมีปัญหาที่ฉันต้องการแปลงไฟล์ CSV อัฒภาคและฉันเพิ่มสิ่งนี้ลงในรหัสและใช้งานได้ หวังว่านี่จะช่วยใครซักคน

เปลี่ยน 'Workbooks.Open Filename:=xSPath & xCSVFile' โดย 'Workbooks.Open Filename:=xSPath & xCSVFile, Delimiter:=";", Local:=True'
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ฉันใช้ไฟล์หลายไฟล์ csv ถึงหลาย xls แต่ได้รับไฟล์ xls de csv ผิด ; แยกข้อมูลแต่รวมกันเป็นเซลล์ จะแก้ปัญหานี้ได้อย่างไร?
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
โค้ดนี้ไม่รองรับไฟล์ csv ที่คั่นด้วยเครื่องหมายจุลภาค
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
เมื่อฉันตั้งชื่อโฟลเดอร์ โปรแกรมบอกว่า "ไม่มีไฟล์ที่ตรงกับการค้นหาของคุณ" แต่มีไฟล์ .csv 2,609 ไฟล์ในโฟลเดอร์
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
รหัสไม่รองรับไฟล์ csv ที่คั่นด้วยเครื่องหมายจุลภาค ไฟล์ของคุณในกรณีนี้คือ?
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
สวัสดี,

บทความที่ดี - ขอบคุณ! เกือบจะได้ผลสำหรับฉัน

นี่คือปัญหา: ฉันมีไฟล์ csv ที่คั่นด้วยไพพ์ ฉันได้เปลี่ยนตัวคั่นหน้าต่างเริ่มต้น (ผ่านแผงควบคุม/การตั้งค่าภูมิภาค) เป็น "|" ดังนั้น เมื่อฉันเปิดไฟล์ csv ด้วย Excel ไฟล์นั้นจะเปิดขึ้น อ่านโดยตรง และแยกวิเคราะห์เขตข้อมูลเป็นคอลัมน์อย่างถูกต้อง ทั้งหมดที่ฉันต้องทำคือบันทึกเป็น xls หรือ xlsx ให้เสร็จ เมื่อฉันดูโค้ดของคุณ มันควรจะเป็นสิ่งที่โค้ดทำ: มันเปิดไฟล์ csv ในโฟลเดอร์ บันทึกเป็น xls หรือ xlsx แล้ววนซ้ำ

นี่คือปัญหา: เมื่อฉันเปิดไฟล์ Excel เหล่านั้น ตัวคั่นไปป์ยังคงอยู่ที่นั่น ไม่มีอะไรถูกแยกวิเคราะห์ไปยังคอลัมน์ นี่เป็นพฤติกรรมก่อนที่จะเปลี่ยนการตั้งค่าเริ่มต้นที่คั่นด้วยไพพ์ในการตั้งค่า Windows ดูเหมือนว่า Excel จะไม่ใช้การตั้งค่า Windows เหล่านั้น ฉันตรวจสอบสิ่งนี้โดยแทนที่ตัวคั่นไพพ์ด้วยตัวคั่นด้วยจุลภาคในสำเนาของไฟล์ - ของทั้งสองไฟล์ ตัวคั่นไพพ์ยังคงไม่ถูกแยกวิเคราะห์ ตัวคั่นด้วยจุลภาคได้รับการแปลงได้ดี

มีแนวคิดใดบ้างที่จะพบหรือเปลี่ยนแปลงตัวคั่นด้วยจุลภาคใน Excel ในตัว หรือมีวิธีใดบ้างในโค้ดที่จะทำเช่นนั้น ฉันไม่ต้องการทำการค้นหาและแทนที่แล้วบันทึก...

ขอบคุณ HC
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ถ้าคุณต้องการแบ่งข้อมูลออกเป็นคอลัมน์ตามตัวคั่นไพพ์ใน Excel เพียงใช้ฟังก์ชัน Text to Columns เพื่อแยกข้อมูลตาม / หลังจากปกปิดไฟล์ csv เป็น xls
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ไม่ได้ทำให้โค้ดมีประโยชน์สำหรับไฟล์ excel
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
สวัสดี สคริปต์ที่ยอดเยี่ยมซึ่งใช้ได้ผลสำหรับฉันหลังจากลองใช้สคริปต์อื่นๆ ทั้งหมดที่มีใน Google ฉันได้เพิ่มอีกสองสามบรรทัดซึ่งดำเนินการข้อความไปยังคอลัมน์ที่ฉันต้องการ ใครช่วยฉันแก้ไขสคริปต์โดยระบุตำแหน่งโฟลเดอร์ในไดรฟ์ในเครื่องแทนการเปิดกล่องโต้ตอบเนื่องจากฉันกำลังทำให้ระบบอัตโนมัติ
. ขอบคุณล่วงหน้า
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
Hi
คุณช่วยแชร์สคริปต์ที่ใช้แสดงข้อความเป็นคอลัมน์ได้ไหม
ขอแสดงความนับถือ
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
Great Script หลังจากค้นหาสคริปต์อื่น ๆ ทั้งหมดที่มีอยู่ใน Google ใครสามารถช่วยแก้ไขสคริปต์นี้โดยระบุตำแหน่งโฟลเดอร์ในไดรฟ์ในเครื่องแทนที่จะอนุญาตให้เปิดกล่องโต้ตอบในขณะที่ฉันกำลังทำให้ระบบอัตโนมัติ ขอบคุณล่วงหน้า
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
รหัสเย็นเล็กน้อย มีประโยชน์มาก. หากฉันจำไม่ผิด รหัสสำหรับ .xlsx จะเหมือนกับรหัส .xls

บรรทัดนี้:
ActiveWorkbook.SaveAs แทนที่ (xSPath & xCSVFile, ".csv", ".xls", vbTextCompare), xlWorkbookDefault

ฉันคิดว่ามันควรจะเป็น: ".csv" , ".xlsx", vbTextCompare เป็นต้น
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ฉันได้เปลี่ยนรหัสดังที่อธิบายไว้ข้างต้น ตอนนี้สคริปต์ทำงานตามที่คาดไว้: มันสร้างไฟล์ xlsx
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ไม่คุณไม่ได้ มันยังคงบอกว่า xls ในทั้งสองเวอร์ชัน
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
มาโครนี้ไม่แสดงไฟล์ csv ของฉัน
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ปัญหาเล็ก ๆ ประการหนึ่งของรหัสนี้คือความแม่นยำ (จำนวนทศนิยม) อาจหายไปเมื่อเปิด csv และบันทึกเป็น xlsx
วิธีป้องกันคือเลือกเซลล์ทั้งหมดทันทีหลังจากเปิด กำหนดจำนวนตำแหน่งทศนิยมเป็นจำนวนที่ต้องการ (15 สำหรับฉันเป็นการส่วนตัว) และ *แล้ว* บันทึกเป็น xlsx

มิฉะนั้น xlsx จะมีรายละเอียดน้อยกว่า (มีความแม่นยำน้อยกว่าในแง่ของทศนิยม) มากกว่า csv ดั้งเดิม ซึ่งอาจนำไปสู่ปัญหาในบางแอปพลิเคชัน
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
มันเปลี่ยนรูปแบบคอลัมน์วันที่ของฉันจาก dd-mm-yyyy เป็น dd/mm/yyyy ใครก็ได้ช่วยด้วยเกี่ยวกับวิธีการป้องกันไม่ให้สคริปต์นี้เปลี่ยนรูปแบบคอลัมน์
ขอบคุณมาก
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
สวัสดี ไวเปอร์ หลังจากแปลงแล้ว คุณสามารถจัดรูปแบบกลับ เลือกวันที่และคลิกขวาเพื่อเลือก จัดรูปแบบเซลล์จากเมนูบริบท ในกล่องโต้ตอบ จัดรูปแบบเซลล์ ภายใต้แท็บ ตัวเลข คลิก กำหนดเอง ในรายการประเภท จากนั้นพิมพ์ mm-dd- ปปปป ลงในกล่องข้อความในส่วนด้านขวา หรือถ้าคุณมี Kutools for Excel ให้ใช้การจัดรูปแบบวันที่เพื่อเปลี่ยนรูปแบบวันที่ตามที่คุณต้องการ
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
บทความที่ดี ฉันจะบันทึกไฟล์ที่แปลงทั้งหมดไว้ในตำแหน่งใหม่ได้อย่างไร คุณช่วยกรุณาอัปเดตรหัสและส่งให้ฉัน ชอบให้ผู้ใช้เลือกโฟลเดอร์ปลายทางได้


ขอบคุณ
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
คุณมีข้อผิดพลาดในบรรทัดที่ 22 ของ csv ถึง xlsx
มีข้อผิดพลาด - ActiveWorkbook.SaveAs แทนที่ (xSPath & xCSVFile, ".csv", ".xls", vbTextCompare), xlWorkbookDefault
แก้ไขแล้ว - ActiveWorkbook.SaveAs แทนที่ (xSPath & xCSVFile, ".csv", ".xslx", vbTextCompare), xlWorkbookDefault
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ขอบคุณสำหรับการเตือน ฉันได้อัปเดตแล้ว ขอบคุณอีกครั้ง
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ฉันได้รับข้อผิดพลาด "ตัวแปรอ็อบเจ็กต์หรือไม่ได้ตั้งค่าตัวแปรบล็อก" สำหรับบรรทัดนี้:
xFd.Title = "/Users/[my.name]/Documents/[myFolder]" >> นี่คือเส้นทางของโฟลเดอร์เฉพาะบนคอมพิวเตอร์ของฉันที่ฉันทำการแปลง (โฟลเดอร์มีไฟล์ csv อยู่ภายใน )

ฉันทำอะไรผิดที่นี่?
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
สิ่งนี้ใช้ได้สำหรับฉัน แต่นามสกุลไฟล์ไม่เปลี่ยนแปลง เคล็ดลับอะไร?
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
เหมือนกันสำหรับฉัน - ไฟล์ทั้งหมดยังคงเป็น .csv
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ไฟล์ csv ทั้งหมดที่คุณเลือกได้รับการบันทึกเป็นไฟล์ excel ใหม่ ไฟล์ต้นฉบับ (csv) จะไม่เปลี่ยนแปลง มีไฟล์ excel ใหม่ที่มีเนื้อหาเหมือนกันอยู่แล้ว
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ฉันมีปัญหาเดียวกัน. หากไฟล์ต้นทางของคุณมีส่วนขยายเป็นตัวพิมพ์ใหญ่ (.CSV) ไฟล์จะไม่ทำงาน เพียงแทนที่ .csv เป็น .CSV ในโค้ดในบรรทัดที่ 22 จากนั้นมันก็จะใช้งานได้ อย่างน้อยสำหรับฉันมันก็ทำ
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ฉันจะรวมโค้ดเข้ากับรูทีนไฟล์แบตช์ XLSX เพื่อคั่นข้อมูลลงในคอลัมน์แยกได้อย่างไร โค้ดที่แชร์จะแปลงไฟล์จาก .csv เป็น .xlsx แต่จะไม่แยกข้อมูลออกเป็นคอลัมน์แยกต่างหาก
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ใช่มันไม่ได้ผล
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
อรุณสวัสดิ์สหาย

Adiciona a lo que hace el script, quisiera poder convertir inmediatamente el texto en columnas, por la opción que no es delimitado por ningún tipo de caracter, adicional los tamaños de las columnas son diferentes. Vale la pena aclarar que si tomo cada archivo por separado y le aplico la opción de texto en columnas, bajo esa opción los puedo convertir sin ปัญหา, abriéndolos uno por uno, pero si grabo esa macro misy le macro aplicodo ใช้โดย "USAR REFERENCIAS RELATIVAS", no hace el proceso bien, porque el graba las posiciones de la delimitación del archivo que uso de ejemplo, pero necesito que lo aplique nuevo a cada archivo, come es vo y le hiciera manualmente la opción de delimitación y no aplique ลอส valores de ubicación de las columnas identificados en el archivo ejemplo.

คุณแทรก esa opcion en este archivo, คว่ำบาตรบาป pasa lo que indico en la lineas arriba, โซโล requiero saber como puedo hacer para aplicar la conversion a cada archivo, aplicando la delimitacion del campo como su fuera un archivo nuevoera


Workbooks.Open ชื่อไฟล์:=xSPath & xCSVFile
ActiveWorkbook.SaveAs แทนที่ (xSPath & xCSVFile, ".csv", ".xlsx", vbTextCompare), xlWorkbookDefault

ESTA PARTE ES LA QUE AGREGUE APLICANDO EL FORMATO DEL TEXTO คอลัมน์

StartRow:=1 ประเภทข้อมูล:=xlFixedWidth, FieldInfo:=Array(Array(0, 1), Array(18 _
, 1), อาร์เรย์(38, 1)), TrailingMinusNumbers:=True
ActiveCell.Cells.Select
ActiveCell.Cells.EntireColumn.AutoFit
ActiveCell.Offset(1, 0).Range("A1")).Select
ActiveWorkbook บันทึก

HASTA AQUI AGREGUE โย

ActiveWorkbook ปิด
Windows(xWsheet) เปิดใช้งาน
xCSVFile = ผบ

ห่วง
Application.StatusBar = เท็จ
Application.DisplayAlerts = จริง
ย่อยสิ้นสุด

No se si me hago explicar bien, pero es mi problema. ไม่มี
มีความคิดเห็นยังไม่มีการโพสต์ที่นี่
แสดงความคิดเห็นของคุณ
โพสต์ในฐานะแขก
×
ให้คะแนนโพสต์นี้:
0   ตัวอักษร
สถานที่แนะนำ