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

Hvordan kan jeg hurtigt batchimportere flere csv / tekst / xml-filer i Excel?

I Excel har du muligvis bundet til at gemme en projektmappe som csv-fil, tekstfil eller xml-fil, men har du nogensinde prøvet at importere flere csv / text / xml-filer fra en mappe til en projektmappe eller et regneark? I denne artikel introducerer jeg nogle metoder til hurtig batchimport af dem.

Importer flere tekstfiler fra en mappe til hvert regneark i en projektmappe med VBA

Importer flere csv-filer fra en mappe til et enkelt ark med VBA

Importer flere xml-filer fra en mappe til et enkelt ark med VBA

Importer eller kombiner flere xml / csv-filer til et ark eller en projektmappe med Kutools til Excel god idé3

Eksporter hvert ark som csv / tekst / pdf til en mappe med Kutools til Excelgod idé3


Hvis du vil importere tekstfiler fra en mappe til en projektmappe, kan du bruge nedenstående VBA til hurtigt at håndtere den.

1. Aktivér en tom projektmappe, og tryk på Alt + F11 taster for at åbne Microsoft Visual Basic til applikationer vindue.

2. klik indsatte > Moduler, og indsæt VBA til Moduler vindue.

VBA: Importer alle tekstfiler fra en mappe til en projektmappe

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. Trykke F5 nøgle eller Kør knap for at køre VBA, og vælg en mappe, som du vil importere tekstfilerne fra, i pop-op-dialogboksen. Se skærmbillede:

doc importerer flere csv-tekster xml 1

4. Og klik OK, og hver tekstfil i den valgte mappe er blevet importeret til et regneark i den aktive projektmappe. Se skærmbillede:

doc importerer flere csv-tekster xml 2doc importerer flere csv-tekster xml 3

Kombiner let flere ark / projektmappe i et enkelt ark eller en projektmappe

At kombinere flere ark eller projektmapper til et ark eller en projektmappe kan være snedig i Excel, men med Kombiner funktion i Kutools til Excel, kan du kombinere flette snesevis af ark / projektmapper til et ark eller en projektmappe, og du kan også konsolidere arkene i et med flere klik.  Klik for alle funktioner 30 dages gratis prøveperiode!
kombinere ark
 
Kutools til Excel: med mere end 300 praktiske Excel-tilføjelser, gratis at prøve uden begrænsning i 30 dage.

For at importere alle csv-filer fra en mappe til et enkelt ark, kan du bruge nedenstående VBA-kode.

1. Aktivér et tomt regneark, og tryk på Alt + F11 taster for at åbne Microsoft Visual Basic til applikationer vindue.

2. klik indsatte > Moduler, og indsæt under VBA i den nye Moduler vindue.

VBA: Importer csv-filer fra en mappe til et regneark

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. Trykke F5 tast eller klik Kør knap for at udføre VBA, og der vises en dialogboks for at vælge en mappe, som du vil importere alle csv-filer fra. Se skærmbillede:

doc importerer flere csv-tekster xml 4

4. klik OK, og der vises en dialogboks for at minde dig om hvis rydde indholdet af det aktive regneark inden import, her klikker jeg Ja. Se skærmbillede:

doc importerer flere csv-tekster xml 5

Efter at have klikket Ja, importeres alle csv-filer i den valgte mappe til det aktuelle ark og placerer data fra kolonne A til højre. Se skærmbillede:

doc importerer flere csv-tekster xml 6doc importerer flere csv-tekster xml 7

Tip: Hvis du vil placere csv-filer vandret i et regneark, kan du bruge nedenstående 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 

doc importerer flere csv-tekster xml 8


Hvis du vil importere alle XML-filer fra en mappe til et enkelt ark, kan du bruge nedenstående VBA-kode.

1. Vælg et tomt ark, du vil placere de importerede data på, og tryk på Alt + F11 taster for at aktivere Microsoft Visual Basic til applikationer vindue.

2. klik indsatte > Moduler, indsæt VBA-kode i Moduler vindue.

VBA: Importer XML-filer fra en mappe til et regneark.

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. klik Kør knappen eller F5 nøgle til at køre VBA, og vælg en mappe i poppedialogen, se skærmbillede:

doc importerer flere csv-tekster xml 9

4. klik OK, og alle XML-filer i den valgte mappe importeres til det aktive ark.


Hvis du ikke er fortrolig med VBA, skal du være bekymret, her introducerer jeg et praktisk værktøj - Kutools til Excel for dig. Med sin kraftfulde Kombiner værktøj, kan du hurtigt kombinere flere xml-filer eller csv-filer i en projektmappe eller et Excel-ark.

Kutools til Excel, med mere end 300 praktiske funktioner, der gør dine job lettere. 

Efter installation Kutools til Excel, gør venligst som nedenfor:(Gratis download Kutools til Excel nu!)

1. Aktiv Excel, og klik Kutools Plus > Kombiner. Se skærmbillede :
doc kombinere 1

2. Og i trin 1 i Kombiner dialog, skal du vælge en separationsmulighed efter behov. Se skærmbillede:
doc kombinere 2

3. klik Næste at tage til trin 2 i Kombinerklik Tilføj for at tilføje filer fra forskellige mapper eller filer fra en mappe til Workbook liste, og du kan også angive de ark, du vil kombinere fra Arbejdsark liste over højre sektion. Se skærmbillede:
doc kutools kombiner ark 3

4. klik Næste til det sidste trin i Kombiner, og du kan angive kombinationsindstillingerne.
doc kutools kombiner ark 4

5. klik Finish, vises en dialogboks, der minder dig om at vælge en placering for at gemme det nye kombinerede resultat. Se skærmbillede:
doc kombinere 5

6. klik Gem. Alle tilføjende ark er blevet kombineret til et nyt enkelt ark.
doc kombinere 6

Tip: Med Kombiner, kan du også kombinere flere CSV-filer danne flere mapper eller en mappe i et ark eller en projektmappe.


Hvis du vil eksportere hvert ark som csv / tekst / pdf-fil til en mappe, Kutools til Excel's Opdelt arbejdsbog værktøj kan gøre en tjeneste for dig.

Efter gratis installation Kutools til Excel, gør venligst som nedenfor:

1. Aktivér den projektmappe, du vil eksportere dens regneark, og klik på Kutools Plus > Workbook > Opdelt arbejdsbog. Se skærmbillede:

doc importerer flere csv-tekster xml 10

2. i Opdelt arbejdsbog dialog, kan du kontrollere de arknavne, du har brug for at eksportere, som standard er alle arkene kontrolleret og kontrolleret Angiv gemme format og vælg det filformat, du vil gemme fra nedenstående rulleliste. Se skærmbillede:

doc importerer flere csv-tekster xml 11

3. klik Dele og vælg en mappe, der skal gemme de delte filer i Søg efter mappe dialog, se skærmbillede:

doc importerer flere csv-tekster xml 12

4. klik OK, nu eksporteres alle de markerede ark som nyt filformat i den valgte mappe.


Relative artikler:


De bedste Office-produktivitetsværktøjer

Kutools til Excel løser de fleste af dine problemer og øger din produktivitet med 80%

  • Genbruge: Indsæt hurtigt komplekse formler, diagrammer og alt, hvad du har brugt før; Krypter celler med adgangskode Opret postliste og send e-mails ...
  • Super formel bar (let redigere flere linjer med tekst og formel); Læsning Layout (let at læse og redigere et stort antal celler); Indsæt til filtreret rækkevidde...
  • Flet celler / rækker / kolonner uden at miste data; Split celler indhold; Kombiner duplikerede rækker / kolonner... Forhindre duplikerede celler; Sammenlign områder...
  • Vælg Duplicate eller Unique Rækker; Vælg tomme rækker (alle celler er tomme); Super Find og Fuzzy Find i mange arbejdsbøger; Tilfældig valg ...
  • Præcis kopi Flere celler uden at ændre formelreference; Auto Opret referencer til flere ark; Indsæt kugler, Afkrydsningsfelter og mere ...
  • Uddrag tekst, Tilføj tekst, Fjern efter position, Fjern mellemrum; Opret og udskriv personsøgningssubtotaler; Konverter mellem celler indhold og kommentarer...
  • Superfilter (gem og anvend filterskemaer på andre ark); Avanceret sortering efter måned / uge / dag, hyppighed og mere; Specielt filter af fed, kursiv ...
  • Kombiner arbejdsbøger og arbejdsark; Fletabeller baseret på nøglekolonner; Opdel data i flere ark; Batch Konverter xls, xlsx og PDF...
  • Mere end 300 kraftfulde funktioner. Understøtter Office / Excel 2007-2021 og 365. Understøtter alle sprog. Nem implementering i din virksomhed eller organisation. Fuld funktioner 30-dages gratis prøveperiode. 60 dages pengene tilbage garanti.
kte-fane 201905

Fanen Office bringer en grænseflade til et kontor med Office, og gør dit arbejde meget lettere

  • Aktiver redigering og læsning af faner i Word, Excel, PowerPoint, Publisher, Access, Visio og Project.
  • Åbn og opret flere dokumenter i nye faner i det samme vindue snarere end i nye vinduer.
  • Øger din produktivitet med 50 % og reducerer hundredvis af museklik for dig hver dag!
officetab bund
Sorter kommentarer efter
Kommentarer (36)
Ingen vurderinger endnu. Vær den første til at bedømme!
Denne kommentar blev minimeret af moderatoren på webstedet
Hej med dig, mange tak for disse kodeeksempler! Den første (VBA: Importer alle tekstfiler fra en mappe til en projektmappe) er næsten præcis, hvad jeg har brug for. Jeg vil dog gerne vælge, hvilke filer der skal importeres og ikke automatisk importere alle tekstfilerne i en given mappe. Jeg vil også gerne have, at det afsluttende indhold af mine målark bliver overskrevet af indholdet af tekstfilerne. (Med koden ovenfor flyttes det eksisterende indhold til højre i stedet for at blive erstattet). Hvordan gør jeg det? Tak på forhånd!
Denne kommentar blev minimeret af moderatoren på webstedet
Hej, jeg vil gerne forstå om VBA-koden for "Importer flere XML-filer fra en mappe til et enkelt ark med VBA". 1. Hvorfor er der brug for 2 projektmapper i stedet for 1? 2. Det tager lidt tid at indlæse mange xml-filer i Excel, så er der en mere effektiv kode? Fordi jeg er klar over, når din kode blev kørt, er der oprettet mange VBA-projektmapper, som forårsagede afmatningen. Jeg vil virkelig sætte pris på, hvis du kan hjælpe mig med at forstå!
Denne kommentar blev minimeret af moderatoren på webstedet
Beklager, jeg forstod ikke dit første spørgsmål, og om det andet, den mere effektive kode, har jeg ikke fundet det, hvis du ved det, så læg en note til mig, tak.
Denne kommentar blev minimeret af moderatoren på webstedet
Hej, Jeg vil gerne forstå om VBA-koden for "Importering af flere .txt-filer fra en mappe til et enkelt ark med VBA" ved næste tilgængelige række (ikke vandret). Venligst hjælp, haster
Denne kommentar blev minimeret af moderatoren på webstedet
Hej, hvis du vil importere alle txt-filer fra en mappe til et enkelt ark, kan du bruge ovenstående vba-kode til at importere txt-filer til en projektmappe først, og derefter anvende Kutools til Excels Combine Worksheets-funktion for at kombinere alle ark i en projektmappe til ét ark, derefter txt-filerne i et ark. Håber det hjælper dig.
Denne kommentar blev minimeret af moderatoren på webstedet
Problemet med dette er, at VBA-kommandoen eller Kutools tillader import af csv-filer med tegnkodeformatering. Forspændingen er western. Jeg skal importere alle csv-filerne som unicode-8
Denne kommentar blev minimeret af moderatoren på webstedet
koden til konvertering fra txt-filer virkede ikke for mig.
Denne kommentar blev minimeret af moderatoren på webstedet
Beklager, at denne artikel ikke virker for dig. Kan du beskrive dit problem? Hvad sker der, mens du kører koden? Og hvilket system arbejder du med?
Denne kommentar blev minimeret af moderatoren på webstedet
Hej! Koden "Importer csv-filer fra en mappe til ét regneark", virker for mig! Men denne kode virker ikke for en tom .txt-fil. Er der nogen måde at beholde de tomme filer på?
Denne kommentar blev minimeret af moderatoren på webstedet
Beklager, jeg ved ikke hvorfor det er nødvendigt at importere en tom txt.file~Indsæt blot tomme rækker for at adskille indholdet.
Denne kommentar blev minimeret af moderatoren på webstedet
Mike: "koden til at konvertere fra txt-filer virkede ikke for mig."

Jeg havde det samme problem. Makrofejlene udelukkes, hvis du har flere txt-filer at åbne end arbejdsark i din projektmappe (standard er 3).
Jeg rettede det ved at tilføje følgende lige før løkken afsluttes, så makroen opretter et nyt ark efter resten
ActiveWorkbook.Sheets.Add After:=Worksheets(Worksheets.Count)
Denne kommentar blev minimeret af moderatoren på webstedet
Tchad, dette fungerede perfekt for mig at importere flere tekstfiler. Tak skal du have.

Ved du, om der er en måde at trække filnavnene på? Jeg vil have tekstfilnavnene kopieret til hver excel-arkfaner.
Denne kommentar blev minimeret af moderatoren på webstedet
Helt fantastisk! Prøvede at åbne alle csv-filer i et regneark, og det fungerede smukt. Tak så meget, virkelig!
Denne kommentar blev minimeret af moderatoren på webstedet
Hej, jeg prøvede at køre koden til .xml, og det så ikke ud til at virke, da jeg fik beskeden "ingen filer xml". Hvordan fikser man dette?
Denne kommentar blev minimeret af moderatoren på webstedet
Det vil vise en besked "ingen filer xml", mens din valgte mappe ikke indeholder xml-filerne. Du kan vælge den rigtige mappe, der indeholder xml-filer i pop-dialogen, efter at du har kørt koden for at importere dem til det aktive ark.
Denne kommentar blev minimeret af moderatoren på webstedet
Det virkede! Tak
Denne kommentar blev minimeret af moderatoren på webstedet
hej, siger mau tanya kalo impor txt-fil ke satu sheet gimana ya?
Denne kommentar blev minimeret af moderatoren på webstedet
Hej, rendy, vil du importere alle txts til et ark eller hver txt til hvert ark?
Denne kommentar blev minimeret af moderatoren på webstedet
jeg har kode til at importere txts til ark hver txt til hvert ark, men jeg vil have hver txt importeret med dens navn til ark, jeg mener omdøb hvert importeret ark med navnet på txt kodefilen vedhæftet .. jeg vil redigere dette fil for at tilføje kode til at omdøbe ark med txts navn ... tak.
Denne kommentar blev minimeret af moderatoren på webstedet
jeg har kode til at importere txts til ark hver txt til hvert ark, men jeg vil have hver txt importeret med dens navn til ark, jeg mener omdøb hvert importeret ark med navnet på txt kodefilen vedhæftet .. tak
Denne kommentar blev minimeret af moderatoren på webstedet
Hej, Ramy, zahran, du kan prøve nedenstående kode, som kan importere tekstfilerne og omdøbe arknavnet til tekstfilnavnet.
Sub LoadPipeDelimitedFiles()
'Opdatering afExtendoffice20180925
Dim xStrPath som streng
Dim xFileDialog Som FileDialog
Dim xFile As String
Dim xCount As Long
Dim xWS Som arbejdsark

Ved fejl Gå til ErrHandler
Indstil xFileDialog = Application.FileDialog(msoFileDialogFolderPicker)
xFileDialog.AllowMultiSelect = Falsk
xFileDialog.title = "Vælg en mappe [Kutools for Excel]"
Hvis xFileDialog.Show = -1 Så
xStrPath = xFileDialog.SelectedItems(1)
End If
Hvis xStrPath = "" Afslut Sub
Application.ScreenUpdating = False
xFile = Dir(xStrPath & "\*.txt")
Gør mens xFile <> ""
xCount = xCount + 1
Indstil xWS = Sheets(xCount)
xWS.Vælg
xWS.Name = "TEXT " & Left(xFile, Len(xFile) - 4)
Med ActiveSheet.QueryTables.Add(Connection:="TEXT;" _
& xStrPath & "\" & xFile, Destination:=Range("A1"))
.Name = "a" & xCount
.FieldNames = Sand
.RowNumbers = Falsk
.FillAdjacentFormulas = Falsk
.PreserveFormatting = Sand
.RefreshOnFileOpen = Falsk
.RefreshStyle = xlInsertDeleteCells
.SavePassword = Falsk
.SaveData = Sand
.AdjustColumnWidth = Sand
.RefreshPeriod = 0
.TextFilePromptOnRefresh = Falsk
.TextFilePlatform = 437
.TextFileStartRow = 1
.TextFileParseType = xlDelimited
.TextFileTextQualifier = xlTextQualifierDoubleQuote
.TextFileConsecutiveDelimiter = Falsk
.TextFileTabDelimiter = Falsk
.TextFileSemicolonDelimiter = Falsk
.TextFileCommaDelimiter = Falsk
.TextFileSpaceDelimiter = Falsk
.TextFileOtherDelimiter = "|"
.TextFileColumnDataTypes = Array(1, 1, 1)
.TextFileTrailingMinusNumbers = Sand
.Refresh BackgroundQuery:=False
xFile = Dir
Slut med
Loop
Application.ScreenUpdating = True
Exit Sub
ErrHandler:
MsgBox "ingen filer txt", , "Kutools til Excel"
End Sub
Denne kommentar blev minimeret af moderatoren på webstedet
Hej! Jeg brugte koden til at flette flere XML-filer til én, men desværre blev kolonnerne rodet. De 5 filer, der blev flettet, havde alle samme format. Er der overhovedet at rette dette? Jeg spekulerede også på, om der var en måde at slippe af med de overskrifter, der duplikeres, når filerne flettes. Tak skal du have!
Denne kommentar blev minimeret af moderatoren på webstedet
Tak skal du have. Denne side har været en stor hjælp. Jeg har et problem, jeg ikke kan finde ud af. Jeg forsøger at importere flere csv-filer til et excel separate ark i excel og få hvert ark omdøbt efter filnavnet på csv-filen. Jeg ved, at dette var dækket nedenfor for en txt-fil, men jeg arbejder med csv-filer. Tak på forhånd.
Denne kommentar blev minimeret af moderatoren på webstedet
Hej - jeg bruger importer alle csv-filer til en fil, der er anført ovenfor "Importer flere Csv-filer fra en mappe til et enkelt ark med VBA" - jeg vil gerne definere den mappe, den indsamler data fra uden at skulle vælge manuelt det. Kan dette lade sig gøre? tak - SW.
Denne kommentar blev minimeret af moderatoren på webstedet
Hej, Scott W, jeg fandt ud af, at en VBA-kode kan hjælpe dig.
Mulighed for eksplicit

Sub ImportCSVsWithReference()
'Forfatter: Jerry Beaucaire
'Dato: 10/16/2010
'Opsummering: Importer alle CSV-filer fra en mappe til et enkelt ark
' tilføjer et felt i kolonne A med CSV-filnavnene

Dim wbCSV som projektmappe
Dim wsMstr Som arbejdsark: Indstil wsMstr = ThisWorkbook.Sheets("Sheet1")
Dim fPath As String: fPath = " C:\Users\DT168\Desktop\New folder\" 'sti til CSV-filer, medtag den sidste \
Dæmp fCSV som streng

Hvis MsgBox("Ryd det eksisterende ark før import?", vbYesNo, "Ryd?") _
= vbYes Så wsMstr.UsedRange.Clear

Application.ScreenUpdating = Falsk 'fremskynde makro

fCSV = Dir(fPath & "*.csv") 'start CSV-fillisten

Gør mens Len(fCSV) > 0
'åbn en CSV-fil
Indstil wbCSV = Workbooks.Open(fPath & fCSV)
'indsæt kolonne A og tilføj CSV-navn
Kolonner(1). Indsæt xlShiftToRight
Columns(1).SpecialCells(xlBlanks).Value = ActiveSheet.Name
'kopier datoen til masterarket og luk kildefilen
ActiveSheet.UsedRange.Copy wsMstr.Range("A" & Rows.Count).End(xlUp).Offset(1)
wbCSV.Luk Falsk
'klar næste CSV
fCSV = Dir
Loop

Application.ScreenUpdating = True
End Sub
Denne kommentar blev minimeret af moderatoren på webstedet
Sådan fjerner du dubleret overskrift og CSV-filnavnskolonne. Venligst hjælp....Jeg har gennemgået flere artikler, men desværre giver alle samme resultat.
Denne kommentar blev minimeret af moderatoren på webstedet
Hej - Jeg har brugt dine VBA-koder til at udtrække data fra flere CSV-filer til excel-fil (koden på denne side) og konvertere csv-filer til excel-filer (denne: https://www.extendoffice.com/documents/excel/4615-excel-batch-convert-csv-to-xls-xlsx.html), med flotte resultater. De hjalp mig med at spare en masse tid.

Jeg bemærker dog et fælles problem med begge disse typer koder. For at præcisere er mit system sat op til at bruge de europæiske standarder for datoer, mens nogle af de CSV-filer, jeg modtog for mit arbejde, indeholder datoer i amerikanske standarder. Det første problem er, at når jeg udtrækker eller konverterer data fra en CSV-fil, der indeholder datoer i amerikansk format, bliver alle disse datoer omvendt (der matcher EU-standarderne, der bruges af mit system). Det er fantastisk, men det voldte mig også problemer, da jeg ikke vidste, at koderne ville ændre datoerne for mig, så jeg gik videre og gjorde det samme igen. Det andet problem er, for de CSV-filer, der indeholder datoer, der allerede er i samme format som det, der bruges af mit system (EU-standarder), er kun de tvetydige datoer omvendt (dvs. 04/05/2019 - 05/04/2019), mens dem, der er for tydelige, forbliver uændrede (dvs. 30/04/2019).

Det, jeg gerne vil have koderne til at gøre, er nøjagtig det samme, som de er vist her, kun at de skal kopiere og indsætte dataene (især datoer) i de nøjagtige formater, der bruges i de originale filer. Dette vil hjælpe med at forhindre enhver mulig forvirring og fejl. Jeg vil gerne lære VBA, så jeg en dag kan skrive mine egne koder, men indtil videre er jeg ikke engang i stand til at ændre dele af de eksisterende koder, så de passer til mine behov. Så hvis du kan hjælpe, så fortæl mig venligst, hvor jeg skal placere de ændrede koder (som du kommer med) til de eksisterende koder. Jeg sætter pris på al feedback og støtte, jeg kan få. Tak allesammen!
Denne kommentar blev minimeret af moderatoren på webstedet
Hej Marshall, i Workbooks.Open-metoden, tilføj indstillingen Local:=True.

dvs
Indstil xWb = Workbooks.Open(xStrPath & "\" & xFile, Local:=True)
Denne kommentar blev minimeret af moderatoren på webstedet
Mange tak Robert. Beklager, at jeg ikke kunne svare dig tidligere. Jeg har ikke fået nogen besked før nu. Jeg vil prøve dette og vende tilbage til dig senere for at fortælle dig, om det virker.
Denne kommentar blev minimeret af moderatoren på webstedet
Hej robert
Det er mig igen. Det tog mig et stykke tid at have tid til at finde ud af, hvilken del af koden "Local:True"-delen skulle føjes til. Resultatet blev flot, da datoerne ikke længere er omvendt. Tak skal du have!
For alle, der har det samme problem, skal du bare ændre denne linje:
Indstil xWb = Workbooks.OpenXML(xStrPath & "\" & xFile)

Til dette:
Indstil xWb = Workbooks.Open(xStrPath & "\" & xFile, Local:=True)
Denne kommentar blev minimeret af moderatoren på webstedet
Hej, er der nogen måde at importere flere csv-filer med semikolon som separator? Tak skal du have!
PS God artikel!
Denne kommentar blev minimeret af moderatoren på webstedet
Hej Team

Jeg bruger koden til at importere flere XML-filer til et enkelt ark med VBA, men problemet, jeg står over for, er, når rækker tæller når cirka 650000, så behandler den ikke resten af ​​xml-filerne i mappen og giver en fejl, der ingen xml-filer . Har brug for din støtte til at øge dette antal.
Denne kommentar blev minimeret af moderatoren på webstedet
Hej Eksperter

Jeg bruger ovenstående kode til at importere flere xml-filer til 1 regneark ved hjælp af VBA, men problemet, jeg står over for, er, når rækker tæller når 650000 i et regneark, så behandler denne kode ikke resten af ​​xml-filerne i mappen. Det giver fejlen "ingen filer.xml". Kræv din venlige støtte
Denne kommentar blev minimeret af moderatoren på webstedet
Hej Instruktionerne til at importere flere xml'er til én fane i et excel-dokument fungerer, men tænkte på, hvordan man får det til at justere kolonnerne. Mine xml'er har ikke alle de samme tags. De er sat op sådan, at hvis xml'en ikke havde nogen data for nogle headere(tags), så mangler headeren fra den xml. Er der en måde at få xml'erne til at importere, så de samme overskrifter fra hver xml og tilhørende data falder ind i den samme kolonne i Excel?
Der er endnu ingen kommentarer her
Load More
Efterlad dine kommentarer
Sender som gæst
×
Bedøm dette indlæg:
0   Tegn
Foreslåede steder

Følg os

Copyright © 2009 - www.extendoffice.com. | Alle rettigheder forbeholdes. Drevet af ExtendOffice. | | Sitemap
Microsoft og Office-logoet er varemærker eller registrerede varemærker tilhørende Microsoft Corporation i USA og / eller andre lande.
Beskyttet af Sectigo SSL