Làm cách nào để nhanh chóng nhập hàng loạt nhiều tệp csv / text / xml trong Excel?
Trong Excel, bạn có thể buộc phải lưu sổ làm việc dưới dạng tệp csv, tệp văn bản hoặc tệp xml, nhưng bạn đã bao giờ cố gắng nhập nhiều tệp csv / text / xml từ một thư mục vào sổ làm việc hoặc trang tính chưa? Trong bài viết này, tôi giới thiệu một số phương pháp để nhập hàng loạt chúng một cách nhanh chóng.
Nhập nhiều tệp văn bản từ một thư mục vào từng trang tính của sổ làm việc với VBA
Nhập nhiều tệp csv từ một thư mục vào một trang tính duy nhất bằng VBA
Nhập nhiều tệp xml từ một thư mục vào một trang tính bằng VBA
Nhập hoặc kết hợp nhiều tệp xml / csv vào một trang tính hoặc một sổ làm việc với Kutools cho Excel
Xuất từng trang tính dưới dạng csv / text / pdf sang một thư mục với Kutools cho Excel
Nhập nhiều tệp văn bản từ một thư mục vào từng trang tính của sổ làm việc với VBA
Để nhập tệp văn bản từ một thư mục vào sổ làm việc, bạn có thể sử dụng VBA bên dưới để nhanh chóng xử lý nó.
1. Bật một sổ làm việc trống và nhấn Alt + F11 chìa khóa để mở Microsoft Visual Basic cho các ứng dụng cửa sổ.
2. nhấp chuột Chèn > Mô-đunvà dán VBA vào Mô-đun cửa sổ.
VBA: Nhập tất cả các tệp văn bản từ một thư mục vào một sổ làm việc
Sub LoadPipeDelimitedFiles()
'UpdatebyKutoolsforExcel20151214
Dim xStrPath As String
Dim xFileDialog As FileDialog
Dim xFile As String
Dim xCount As Long
On Error GoTo ErrHandler
Set xFileDialog = Application.FileDialog(msoFileDialogFolderPicker)
xFileDialog.AllowMultiSelect = False
xFileDialog.Title = "Select a folder [Kutools for Excel]"
If xFileDialog.Show = -1 Then
xStrPath = xFileDialog.SelectedItems(1)
End If
If xStrPath = "" Then Exit Sub
Application.ScreenUpdating = False
xFile = Dir(xStrPath & "\*.txt")
Do While xFile <> ""
xCount = xCount + 1
Sheets(xCount).Select
With ActiveSheet.QueryTables.Add(Connection:="TEXT;" _
& xStrPath & "\" & xFile, Destination:=Range("A1"))
.Name = "a" & xCount
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.TextFilePromptOnRefresh = False
.TextFilePlatform = 437
.TextFileStartRow = 1
.TextFileParseType = xlDelimited
.TextFileTextQualifier = xlTextQualifierDoubleQuote
.TextFileConsecutiveDelimiter = False
.TextFileTabDelimiter = False
.TextFileSemicolonDelimiter = False
.TextFileCommaDelimiter = False
.TextFileSpaceDelimiter = False
.TextFileOtherDelimiter = "|"
.TextFileColumnDataTypes = Array(1, 1, 1)
.TextFileTrailingMinusNumbers = True
.Refresh BackgroundQuery:=False
xFile = Dir
End With
Loop
Application.ScreenUpdating = True
Exit Sub
ErrHandler:
MsgBox "no files txt", , "Kutools for Excel"
End Sub
3. nhấn F5 phím hoặc chạy để chạy VBA và chọn một thư mục mà bạn muốn nhập các tệp văn bản từ trong hộp thoại bật lên. Xem ảnh chụp màn hình:
4. Và nhấp vào OKvà mỗi tệp văn bản trong thư mục đã chọn đã được nhập vào một trang tính của sổ làm việc đang hoạt động. Xem ảnh chụp màn hình:
Dễ dàng kết hợp nhiều trang tính / Sổ làm việc thành một Trang tính hoặc Sổ làm việc
|
Để kết hợp nhiều trang tính hoặc sổ làm việc thành một trang tính hoặc sổ làm việc có thể khó khăn trong Excel, nhưng với Kết hợp trong Kutools cho Excel, bạn có thể kết hợp hợp nhất hàng chục trang tính / sổ làm việc thành một trang tính hoặc sổ làm việc, ngoài ra, bạn có thể hợp nhất các trang tính thành một chỉ bằng vài cú nhấp chuột. Nhấp để dùng thử miễn phí 30 ngày đầy đủ tính năng! |
Kutools cho Excel: với hơn 300 bổ trợ Excel tiện dụng, dùng thử miễn phí không giới hạn trong 30 ngày. |
Nhập nhiều tệp csv từ một thư mục vào một trang tính duy nhất bằng VBA
Để nhập tất cả các tệp csv tạo thành một thư mục vào một trang tính duy nhất, bạn có thể sử dụng mã VBA bên dưới.
1. Bật một trang tính trống và nhấn Alt + F11 chìa khóa để mở Microsoft Visual Basic cho các ứng dụng cửa sổ.
2. nhấp chuột Chèn > Mô-đunvà dán bên dưới VBA vào Mô-đun cửa sổ.
VBA: Nhập tệp csv từ một thư mục vào một trang tính
Sub ImportCSVsWithReference()
'UpdatebyKutoolsforExcel20151214
Dim xSht As Worksheet
Dim xWb As Workbook
Dim xStrPath As String
Dim xFileDialog As FileDialog
Dim xFile As String
On Error GoTo ErrHandler
Set xFileDialog = Application.FileDialog(msoFileDialogFolderPicker)
xFileDialog.AllowMultiSelect = False
xFileDialog.Title = "Select a folder [Kutools for Excel]"
If xFileDialog.Show = -1 Then
xStrPath = xFileDialog.SelectedItems(1)
End If
If xStrPath = "" Then Exit Sub
Set xSht = ThisWorkbook.ActiveSheet
If MsgBox("Clear the existing sheet before importing?", vbYesNo, "Kutools for Excel") = vbYes Then xSht.UsedRange.Clear
Application.ScreenUpdating = False
xFile = Dir(xStrPath & "\" & "*.csv")
Do While xFile <> ""
Set xWb = Workbooks.Open(xStrPath & "\" & xFile)
Columns(1).Insert xlShiftToRight
Columns(1).SpecialCells(xlBlanks).Value = ActiveSheet.Name
ActiveSheet.UsedRange.Copy xSht.Range("A" & Rows.Count).End(xlUp).Offset(1)
xWb.Close False
xFile = Dir
Loop
Application.ScreenUpdating = True
Exit Sub
ErrHandler:
MsgBox "no files csv", , "Kutools for Excel"
End Sub
3. nhấn F5 phím hoặc bấm chạy để thực thi VBA và một hộp thoại bật ra để chọn một thư mục mà bạn muốn nhập tất cả các tệp csv từ đó. Xem ảnh chụp màn hình:
4. nhấp chuột OKvà một hộp thoại bật ra để nhắc bạn nếu xóa nội dung của trang tính đang hoạt động trước khi nhập, tôi nhấp vào đây Có. Xem ảnh chụp màn hình:
Sau khi nhấp Có, tất cả các tệp csv trong thư mục đã chọn được nhập vào trang tính hiện tại và đặt dữ liệu từ Cột A sang phải. Xem ảnh chụp màn hình:
Mẹo: Nếu bạn muốn đặt tệp csv theo chiều ngang trong một trang tính, bạn có thể sử dụng VBA bên dưới.
Sub ImportCSVsWithReferenceI()
'UpdatebyKutoolsforExcel20151214
Dim xSht As Worksheet
Dim xWb As Workbook
Dim xStrPath As String
Dim xFileDialog As FileDialog
Dim xFile As String
Dim xCount As Long
On Error GoTo ErrHandler
Set xFileDialog = Application.FileDialog(msoFileDialogFolderPicker)
xFileDialog.AllowMultiSelect = False
xFileDialog.Title = "Select a folder [Kutools for Excel]"
If xFileDialog.Show = -1 Then
xStrPath = xFileDialog.SelectedItems(1)
End If
If xStrPath = "" Then Exit Sub
Set xSht = ThisWorkbook.ActiveSheet
If MsgBox("Clear the existing sheet before importing?", vbYesNo, "Kutools for Excel") = vbYes Then
xSht.UsedRange.Clear
xCount = 1
Else
xCount = xSht.Cells(3, Columns.Count).End(xlToLeft).Column + 1
End If
Application.ScreenUpdating = False
xFile = Dir(xStrPath & "\" & "*.csv")
Do While xFile <> ""
Set xWb = Workbooks.Open(xStrPath & "\" & xFile)
Rows(1).Insert xlShiftDown
Range("A1") = ActiveSheet.Name
ActiveSheet.UsedRange.Copy xSht.Cells(1, xCount)
xWb.Close False
xFile = Dir
xCount = xSht.Cells(3, Columns.Count).End(xlToLeft).Column + 1
Loop
Application.ScreenUpdating = True
Exit Sub
ErrHandler:
MsgBox "no files csv", , "Kutools for Excel"
End Sub
Nhập nhiều tệp xml từ một thư mục vào một trang tính bằng VBA
Nếu bạn muốn nhập tất cả các tệp XML từ một thư mục vào một trang tính duy nhất, bạn có thể sử dụng mã VBA bên dưới.
1. Chọn một trang tính trống mà bạn muốn đặt dữ liệu đã nhập và nhấn Alt + F11 phím để kích hoạt Microsoft Visual Basic cho các ứng dụng cửa sổ.
2. nhấp chuột Chèn > Mô-đun, dán mã VBA vào Mô-đun cửa sổ.
VBA: Nhập tệp XML từ một thư mục vào một trang tính.
Sub From_XML_To_XL()
'UpdatebyKutoolsforExcel20151214
Dim xWb As Workbook
Dim xSWb As Workbook
Dim xStrPath As String
Dim xFileDialog As FileDialog
Dim xFile As String
Dim xCount As Long
On Error GoTo ErrHandler
Set xFileDialog = Application.FileDialog(msoFileDialogFolderPicker)
xFileDialog.AllowMultiSelect = False
xFileDialog.Title = "Select a folder [Kutools for Excel]"
If xFileDialog.Show = -1 Then
xStrPath = xFileDialog.SelectedItems(1)
End If
If xStrPath = "" Then Exit Sub
Application.ScreenUpdating = False
Set xSWb = ThisWorkbook
xCount = 1
xFile = Dir(xStrPath & "\*.xml")
Do While xFile <> ""
Set xWb = Workbooks.OpenXML(xStrPath & "\" & xFile)
xWb.Sheets(1).UsedRange.Copy xSWb.Sheets(1).Cells(xCount, 1)
xWb.Close False
xCount = xSWb.Sheets(1).UsedRange.Rows.Count + 2
xFile = Dir()
Loop
Application.ScreenUpdating = True
xSWb.Save
Exit Sub
ErrHandler:
MsgBox "no files xml", , "Kutools for Excel"
End Sub
3. nhấp chuột chạy nút hoặc F5 để chạy VBA và chọn một thư mục trong hộp thoại bật lên, xem ảnh chụp màn hình:
4. nhấp chuột OK, và tất cả các tệp XML trong thư mục đã chọn được nhập vào trang tính hiện hoạt.
Nhập hoặc kết hợp nhiều tệp xml / csv vào một trang tính hoặc một sổ làm việc với Kutools cho Excel
Nếu bạn không quen với VBA, đừng lo lắng, ở đây tôi giới thiệu một công cụ hữu ích - Kutools cho Excel cho bạn. Với sức mạnh của nó Kết hợp tiện ích, bạn có thể nhanh chóng kết hợp nhiều tệp xml hoặc tệp csv vào một sổ làm việc hoặc một trang tính Excel.
Kutools cho Excel, với hơn 300 chức năng tiện dụng, giúp công việc của bạn dễ dàng hơn. | ||
Sau khi cài đặt Kutools cho Excel, vui lòng làm như sau:(Tải xuống miễn phí Kutools cho Excel ngay!)
1. Active Excel và nhấp vào Kutools Plus > Kết hợp. Xem ảnh chụp màn hình :
2. Và trong bước 1 của Kết hợp hộp thoại, chọn một tùy chọn tách khi bạn cần. Xem ảnh chụp màn hình:
3. nhấp chuột Sau đi đến bước 2 của Kết hợp, Click Thêm để thêm tệp từ các thư mục khác nhau hoặc tệp từ một thư mục vào Bảng tính danh sách và bạn cũng có thể chỉ định các trang tính mà bạn muốn kết hợp Bảng danh sách của phần bên phải. Xem ảnh chụp màn hình:
4. nhấp chuột Sau đến bước cuối cùng của Kết hợpvà bạn có thể chỉ định các tùy chọn kết hợp.
5. nhấp chuột Kết thúc, một hộp thoại bật ra để nhắc bạn chọn một vị trí để lưu kết quả tổng hợp mới. Xem ảnh chụp màn hình:
6. nhấp chuột Lưu. Tất cả các trang tính thêm đã được kết hợp thành một trang tính mới.
Mẹo: Với Kết hợp, bạn cũng có thể kết hợp nhiều Tệp CSV tạo nhiều thư mục hoặc một thư mục thành một trang tính hoặc sổ làm việc.
Kết hợp nhiều tệp XML / CVS thành một trang tính / sổ làm việc
Xuất từng trang tính dưới dạng csv / text / pdf sang một thư mục với Kutools cho Excel
Nếu bạn muốn xuất từng trang tính dưới dạng tệp csv / text / pdf vào một thư mục, Kutools cho Excel'S Chia sổ làm việc tiện ích có thể giúp ích cho bạn.
Sau cài đặt miễn phí Kutools cho Excel, vui lòng làm như sau:
1. Bật sổ làm việc bạn muốn xuất các trang tính của nó và nhấp vào Kutools Plus > Bảng tính > Chia sổ làm việc. Xem ảnh chụp màn hình:
2. bên trong Chia sổ làm việc hộp thoại, bạn có thể kiểm tra tên trang tính mà bạn cần xuất, theo mặc định, tất cả các trang tính đều được chọn và kiểm tra Chỉ định định dạng lưu và chọn định dạng tệp bạn muốn lưu từ danh sách thả xuống bên dưới. Xem ảnh chụp màn hình:
3. nhấp chuột chẻ và chọn một thư mục để lưu các tệp được chia nhỏ trong Chọn thư mục hộp thoại, xem ảnh chụp màn hình:
4. nhấp chuột OK, bây giờ tất cả các trang tính đã chọn được xuất dưới dạng định dạng tệp mới trong thư mục đã chọn.
Xuất từng trang tính thành một tệp XML / CSV / TXT / PDF
Các bài báo tương đối:
- Làm thế nào để chuyển đổi siêu liên kết thành văn bản thuần túy trong Excel?
- Làm cách nào để chuyển đổi số thập phân sang số nhị phân / bát phân / hex hoặc ngược lại trong Excel?
- Làm thế nào để chèn tỷ giá hối đoái trực tiếp trong Excel?
Công cụ năng suất văn phòng tốt nhất
Nâng cao kỹ năng Excel của bạn với Kutools for Excel và trải nghiệm hiệu quả hơn bao giờ hết. Kutools for Excel cung cấp hơn 300 tính năng nâng cao để tăng năng suất và tiết kiệm thời gian. Bấm vào đây để có được tính năng bạn cần nhất...
Tab Office mang lại giao diện Tab cho Office và giúp công việc của bạn trở nên dễ dàng hơn nhiều
- Cho phép chỉnh sửa và đọc theo thẻ trong Word, Excel, PowerPoint, Publisher, Access, Visio và Project.
- Mở và tạo nhiều tài liệu trong các tab mới của cùng một cửa sổ, thay vì trong các cửa sổ mới.
- Tăng 50% năng suất của bạn và giảm hàng trăm cú nhấp chuột cho bạn mỗi ngày!