บ่อยครั้งที่ได้รับไฟล์ในรูปแบบ CSV ซึ่งไม่ค่อยสะดวกในการใช้งาน บทความนี้จะแสดง 6 วิธี (จริงๆ มี 5 วิธีหลัก + 1 วิธีออนไลน์) สำหรับ แปลง CSV เป็น XLSX โดยไม่ต้องเปิดไฟล์ ใช้ชุดข้อมูลตัวอย่าง 3 คอลัมน์: "Name", "Email", และ "Birth Year"

5 วิธีแปลง CSV เป็น XLSX โดยไม่เปิดไฟล์
1. ใช้ Text Import Wizard
วิธีแรกใช้ Text Import Wizard แปลง CSV เป็น XLSX
ขั้นตอน:
- ที่แท็บ Data → เลือก From Text/CSV

- กล่องโต้ตอบ Import Data เปิด → เลือกไฟล์ "convert-csv-to-xlsx.csv" → กด Import

- หน้าต่างใหม่เปิด → จาก Load → เลือก "Load To…"

- เลือกตำแหน่ง output: คลิก "Existing worksheet:" ชี้ไป เซลล์ A1 → กด OK

ได้ไฟล์ CSV แปลงเป็น XLSX แล้ว

อ่านเพิ่ม: วิธีแปลง CSV เป็น XLSX (4 วิธีเร็ว)
2. ใช้ Legacy Wizard
ใช้ Legacy Wizard แปลง CSV เป็น XLSX
ขั้นตอน:
- กด ALT + F + T เปิด Excel Options
- ที่ Data → تิก "From Text (Legacy)" → OK

- ที่แท็บ Data → Get Data → Legacy Wizards → From Text (Legacy)

- Import ไฟล์อีกครั้ง

- หน้าต่าง Text Import Wizard เปิด → تิก "My data has headers" → Next

- เลือก Comma เป็น Delimiter → Next

- กด Finish

- ตั้งตำแหน่ง output ที่ เซลล์ A1 ใน Sheet2 → OK

ได้ผลลัพธ์ตามภาพ

อ่านเพิ่ม: Excel VBA Import CSV โดยไม่เปิดไฟล์ (3 ตัวอย่าง)
3. ใช้โค้ด VBA แปลง CSV เป็น XLSX
ใช้ VBA อีกแบบ กำหนดไฟล์ input/output สำหรับไฟล์เดียว
ขั้นตอน:
- เลือกไฟล์ → แท็บ Home → Copy path (คัดลอกที่อยู่ไฟล์)

- เปิดหน้าต่าง Module (ดูวิธีข้อ 3 ก่อนหน้า) → วางโค้ด:
Sub CsvToXlsxConversion2() Dim w As Workbook Set w = Workbooks.Open("C:\Users\Rafi\OneDrive\Desktop\Softeko\36\convert-csv-to-xlsx.csv") w.SaveAs Filename:="C:\Users\Rafi\OneDrive\Desktop\Softeko\36\convert-csv-to-xlsx.xlsx", _ FileFormat:=xlWorkbookDefault, _ ReadOnlyRecommended:=False, CreateBackup:=False End Sub
อธิบายโค้ด VBA
- เรียก Sub Procedure CsvToXlsxConversion2
- ประกาศตัวแปร
- กำหนด input file ด้วย Set Statement (จาก Copy path)
- ตั้ง output file เป็น "converted.xlsx" รูปแบบ xlWorkbookDefault (= XLSX)

- Save และ Run Module

ได้วิธีแปลง CSV เป็น XLSX อีกวิธี

อ่านเพิ่ม: Excel VBA แปลง CSV เป็น XLSX (2 ตัวอย่าง)
4. ใช้ VBA แปลงหลายไฟล์ CSV เป็น XLSX พร้อมกัน
ใช้ Excel VBA แปลงทุกไฟล์ CSV ในโฟลเดอร์ที่เลือก
ขั้นตอน:
- แท็บ Developer → Visual Basic

- Insert → Module

- วางโค้ด:
Sub CsvToXlsxConversion() Dim f As FileDialog Dim fPath As String Dim csvFile As String Dim ws As String Application.DisplayAlerts = False Application.StatusBar = True ws = ActiveWorkbook.Name Set f = Application.FileDialog(msoFileDialogFolderPicker) f.Title = "Select a folder:" If f.Show = -1 Then fPath = f.SelectedItems(1) Else Exit Sub End If If Right(fPath, 1) <> "\" Then fPath = fPath + "\" csvFile = Dir(fPath & "*.csv") Do While csvFile <> "" Application.StatusBar = "Converting: " & csvFile Workbooks.Open Filename:=fPath & csvFile ActiveWorkbook.SaveAs Replace(fPath & csvFile, ".csv", ".xlsx", vbTextCompare), xlWorkbookDefault ActiveWorkbook.Close Windows(ws).Activate csvFile = Dir Loop Application.StatusBar = False Application.DisplayAlerts = True End Sub
อธิบายโค้ด VBA
- เรียก Sub CsvToXlsxConversion
- ประกาศตัวแปร
- แสดง InputBox เลือก โฟลเดอร์
- ค้นหาไฟล์ CSV ทั้งหมดในโฟลเดอร์
- ใช้ Do While Loop แปลงทุกไฟล์ CSV

- Save Module → คลิกในโค้ด → กด Run

- เลือก โฟลเดอร์ → OK

จะได้ไฟล์ XLSX 2 ไฟล์ในโฟลเดอร์นั้น

เปิดดูไฟล์ใดไฟล์หนึ่งเพื่อตรวจสอบ

อ่านเพิ่ม: วิธีเปิด CSV ใน Excel พร้อมคอลัมน์อัตโนมัติ (3 วิธี)
5. ใช้ Command-Line แปลง CSV เป็น XLSX
ใช้ Command Prompt ช่วยแปลง
ขั้นตอน:
- พิมพ์โค้ดใน Notepad:
sourceFile= Wscript.Arguments(0) targetFile = Wscript.Arguments(1) On Error Resume Next Set tExcel = GetObject(,"Excel.Application") If Err.Number = 429 Then Set tExcel = CreateObject("Excel.Application") End If tExcel.Visible = false tExcel.displayalerts=false Set tWorkbook = tExcel.Workbooks.open(sourceFile) Set tWorksheet1 = tWorkbook.Worksheets(1) Set tRange = tWorksheet1.UsedRange tRange.EntireColumn.Autofit() tExcel.Rows(1).Font.Bold = TRUE tWorksheet1.SaveAs targetFile, 51 tExcel.Quit()
อธิบายโค้ด VBS
เป็นโค้ด Visual Basic Scripting Edition
- ตั้งค่า 2 arguments
- กำหนด input file ใช้ Worksheet แรกเท่านั้น
- ตั้งค่า range ของเซลล์
- ใช้ Autofit
- ทำให้แถวแรก Bold
- บันทึกเป็น 51 (= XLSX)
- ใน Notepad: เลือก All Files ใน "Save as type"
- บันทึกเป็น "conversion.vbs"

- เปิด Command Prompt จาก Start Menu

- พิมพ์คำสั่งตั้งโฟลเดอร์ทำงาน:
CD "C:\Users\USER\Desktop\Exceldemy"
- พิมพ์คำสั่งรัน conversion.vbs (ตำแหน่งแรก = input, ตำแหน่งที่สอง = output):
conversion "C:\Users\USER\Desktop\Exceldemy\convert-csv-to-xlsx.csv" "C:\Users\USER\Desktop\Exceldemy\converted-using-cmd.xlsx"
- กด ENTER

เปิด "converted-using-cmd.xlsx" ตรวจสอบผลลัพธ์

อ่านเพิ่ม: วิธีเปิด CSV พร้อมคอลัมน์ใน Excel (3 วิธีง่าย)
แปลง CSV ด้วย Online Converter
วิธีสุดท้าย ใช้เว็บแปลงออนไลน์ เช่น Cloud Convert
ขั้นตอน:
- เข้าเว็บไซต์
- เลือกไฟล์

- เลือกไฟล์ → Open

- เลือก XLSX เป็น output format → Convert

- กด Download

ได้ไฟล์ XLSX จากเครื่องมือออนไลน์

อ่านเพิ่ม: วิธีอ่าน CSV ใน Excel (4 วิธีเร็วที่สุด)
สรุป
แสดง 5 วิธี แปลง CSV เป็น XLSX โดยไม่เปิดไฟล์ หากมีปัญหา สามารถคอมเมนต์ได้ ขอบคุณที่อ่าน จงเก่งขึ้นไปเรื่อยๆ!
บทความเกี่ยวข้อง
- Excel VBA อ่าน CSV ทีละบรรทัด (3 ตัวอย่าง)
- วิธีเปิด Notepad หรือ Text File ใน Excel พร้อมคอลัมน์ (3 วิธี)
- Excel VBA: อ่าน Text File เข้า String (4 กรณี)
- วิธี Import Text File ไป Excel ด้วย VBA (3 วิธี)