Hur importerar jag snabbt flera csv / text / xml-filer i Excel?
I Excel kan du ha sparat en arbetsbok som csv-fil, textfil eller xml-fil, men har du någonsin försökt importera flera csv / text / xml-filer från en mapp till en arbetsbok eller ett kalkylblad? I den här artikeln introducerar jag några metoder för att snabbt importera dem i batch.
Importera flera textfiler från en mapp till varje arbetsblad i en arbetsbok med VBA
Importera flera csv-filer från en mapp till ett ark med VBA
Importera flera xml-filer från en mapp till ett ark med VBA
Importera eller kombinera flera xml / csv-filer till ett ark eller en arbetsbok med Kutools för Excel
Exportera varje ark som csv / text / pdf till en mapp med Kutools för Excel
Importera flera textfiler från en mapp till varje arbetsblad i en arbetsbok med VBA
För att importera textfiler från en mapp till en arbetsbok kan du använda VBA nedan för att snabbt hantera den.
1. Aktivera en tom arbetsbok och tryck på Alt + F11 nycklar för att öppna Microsoft Visual Basic för applikationer fönster.
2. klick Insert > Modulernaoch klistra in VBA i Modulerna fönster.
VBA: Importera alla textfiler från en mapp till en arbetsbok
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. Tryck F5 nyckel eller Körning för att köra VBA och välj en mapp som du vill importera textfilerna från i poppdialogen. Se skärmdump:
4. Och klicka OK, och varje textfil i den valda mappen har importerats till ett kalkylblad i den aktiva arbetsboken. Se skärmdump:
Kombinera enkelt flera ark / arbetsbok i ett ark eller arbetsbok
|
Att kombinera flera ark eller arbetsböcker till ett ark eller arbetsbok kan vara snedigt i Excel, men med Kombinera funktion i Kutools för Excel, du kan kombinera sammanfoga dussintals ark / arbetsböcker till ett ark eller arbetsbok, du kan också konsolidera arken i ett med flera klick. Klicka för en 30 dagars gratis provperiod med alla funktioner! |
Kutools för Excel: med mer än 300 praktiska Excel-tillägg, gratis att prova utan begränsning på 30 dagar. |
Importera flera csv-filer från en mapp till ett ark med VBA
För att importera alla csv-filer från en mapp till ett enda ark kan du använda VBA-koden nedan.
1. Aktivera ett tomt kalkylblad och tryck på Alt + F11 nycklar för att öppna Microsoft Visual Basic för applikationer fönster.
2. klick Insert > Modulernaoch klistra in under VBA i det nya Modulerna fönster.
VBA: Importera csv-filer från en mapp till ett kalkylblad
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. Tryck F5 eller klicka Körning för att utföra VBA, och en dialogruta dyker upp för att välja en mapp som du vill importera alla csv-filer från. Se skärmdump:
4. klick OK, och en dialog dyker upp för att påminna dig om rensa innehållet i det aktiva kalkylbladet innan du importerar, här klickar jag Ja. Se skärmdump:
Efter att ha klickat Jaimporteras alla csv-filer i den valda mappen till det aktuella arket och placerar data från kolumn A till höger. Se skärmdump:
Dricks: Om du vill placera csv-filer horisontellt i ett kalkylblad kan du använda nedan VBA.
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
Importera flera xml-filer från en mapp till ett ark med VBA
Om du vill importera alla XML-filer från en mapp till ett ark kan du använda nedanstående VBA-kod.
1. Välj ett tomt ark du vill placera de importerade uppgifterna och tryck på Alt + F11 för att aktivera Microsoft Visual Basic för applikationer fönster.
2. klick Insert > Modulerna, klistra in VBA-kod i Modulerna fönster.
VBA: Importera XML-filer från en mapp till ett kalkylblad.
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. klick Körning knapp eller F5 för att köra VBA och välj en mapp i poppdialogen, se skärmdump:
4. klick OK, och alla XML-filer i den valda mappen importeras till det aktiva arket.
Importera eller kombinera flera xml / csv-filer till ett ark eller en arbetsbok med Kutools för Excel
Om du inte känner till VBA, oroa dig, här introducerar jag ett praktiskt verktyg - Kutools för Excel till dig. Med sin kraftfulla Kombinera verktyget kan du snabbt kombinera flera xml-filer eller csv-filer i en arbetsbok eller ett Excel-ark.
Kutools för Excel, med mer än 300 praktiska funktioner, gör dina jobb enklare. | ||
När du har installerat Kutools för Excel, gör så här:(Gratis nedladdning Kutools för Excel nu!)
1. Aktivera Excel och klicka Kutools Plus > Kombinera. Se skärmdump :
2. Och i steg 1 i Kombinera välj ett separationsalternativ efter behov. Se skärmdump:
3. klick Nästa att gå till steg 2 i Kombinera, Klicka Lägg till för att lägga till filer från olika mappar eller filer från en mapp till Arbetsbok listan, och du kan också ange de ark du vill kombinera från Arbetsblad lista över rätt avsnitt. Se skärmdump:
4. klick Nästa till det sista steget av Kombinera, och du kan ange kombinationsalternativen.
5. klick Finish, en dialogruta dyker upp för att påminna dig om att du väljer en plats för att spara det nya kombinerade resultatet. Se skärmdump:
6. klick Save. Alla ark som läggs till har kombinerats till ett nytt enda ark.
Dricks: Med Kombinerakan du också kombinera flera CSV-filer forma flera mappar eller en mapp till ett ark eller arbetsbok.
Kombinera flera XML / CVS-filer i ett ark / arbetsbok
Exportera varje ark som csv / text / pdf till en mapp med Kutools för Excel
Om du vill exportera varje ark som csv / text / pdf-fil till en mapp, Kutools för ExcelÄr Dela arbetsbok verktyget kan göra en tjänst för dig.
Efter gratis installation Kutools för Excel, gör så här:
1. Aktivera arbetsboken som du vill exportera dess kalkylblad och klicka på Kutools Plus > Arbetsbok > Dela arbetsbok. Se skärmdump:
2. I Dela arbetsbok i dialogrutan kan du kontrollera de arknamn du behöver exportera, som standard är alla ark kontrollerade och markerade Ange spara format och välj det filformat som du vill spara från nedrullningslistan nedan. Se skärmdump:
3. klick Split och välj en mapp som du vill spara delade filer i Bläddra efter mapp dialogruta, se skärmdump:
4. klick OKnu exporteras alla markerade ark som nytt filformat i den valda mappen.
Exportera varje ark som enstaka XML / CSV / TXT / PDF-fil
Relativa artiklar:
- Hur konverterar man hyperlänk till vanlig text i Excel?
- Hur konverterar man decimaltal till binärt / oktalt / hexnummer eller vice versa i Excel?
- Hur infogar jag växelkurs i Excel?
Bästa kontorsproduktivitetsverktyg
Uppgradera dina Excel-färdigheter med Kutools för Excel och upplev effektivitet som aldrig förr. Kutools för Excel erbjuder över 300 avancerade funktioner för att öka produktiviteten och spara tid. Klicka här för att få den funktion du behöver mest...
Fliken Office ger ett flikgränssnitt till Office och gör ditt arbete mycket enklare
- Aktivera flikredigering och läsning i Word, Excel, PowerPoint, Publisher, Access, Visio och Project.
- Öppna och skapa flera dokument i nya flikar i samma fönster, snarare än i nya fönster.
- Ökar din produktivitet med 50 % och minskar hundratals musklick för dig varje dag!