Note: The other languages of the website are Google-translated. Back to English
Belépek  \/ 
x
or
x
Regisztráció  \/ 
x

or

Hogyan mentse el, exportálja több / az összes lapot különálló csv- vagy szövegfájlok elkülönítésére az Excel-ben?

Az Excel használata közben manuálisan menthet munkalapot csv vagy szöveges fájlként a Mentés másként funkcióval. Ha azonban egy munkafüzet több vagy összes lapját különálló csv- vagy szövegfájlokká kívánja konvertálni, akkor hogyan teheti meg? Ebben a cikkben megmutatjuk, hogyan lehet több vagy az összes lapot külön csv vagy szöveges fájlba menteni vagy átalakítani.

Mentse, exportálja vagy konvertálja az összes lapot CSV formátumba vagy szöveges fájlba VBA kóddal
Több / összes lap mentése, exportálása vagy konvertálása csv vagy szövegfájlba a Kutools for Excel programmal


Mentse, exportálja vagy konvertálja az összes lapot CSV formátumba vagy szöveges fájlba VBA kóddal

Az alábbi VBA-kódokkal az összes munkalapot elmentheti egy munkafüzetbe külön csv- vagy szövegfájlokba. Kérjük, tegye a következőket.

Exportálja vagy konvertálja az összes lapot csv fájlokká

1. nyomja meg más + F11 gombok egyszerre a Microsoft Visual Basic alkalmazás ablak.

2. Ban,-ben Microsoft Visual Basic alkalmazás ablakban kattintson betétlap > Modulok. Ezután másolja és illessze be a következő kódot a Modulok ablak.

VBA kód: Minden lap exportálása külön csv fájlokba

Sub ExportSheetsToCSV()
	Dim xWs As Worksheet
	Dim xcsvFile As String
	For Each xWs In Application.ActiveWorkbook.Worksheets
		xWs.Copy
		xcsvFile = CurDir & "\" & xWs.Name & ".csv"
		Application.ActiveWorkbook.SaveAs Filename: = xcsvFile, _
		FileFormat: = xlCSV, CreateBackup: = False
		Application.ActiveWorkbook.Saved = True
		Application.ActiveWorkbook.Close
	Next
End Sub

3. megnyomni a F5 gombot a kód futtatásához. Látni fogja, hogy az összes exportált csv fájl a dokumentumok mappába. Lásd a képernyőképet:

Exportálja vagy konvertálja az összes lapot szöveges fájlokká

A következő kód segíthet a munkafüzet összes lapjának külön szövegfájlokká történő exportálásában vagy konvertálásában.

VBA kód: Minden lap exportálása külön szövegfájlokba

Sub ExportSheetsToText()
	Dim xWs As Worksheet
	Dim xTextFile As String
	For Each xWs In Application.ActiveWorkbook.Worksheets
		xWs.Copy
		xTextFile = CurDir & "\" & xWs.Name & ".txt"
		Application.ActiveWorkbook.SaveAs Filename: = xTextFile, FileFormat: = xlText
		Application.ActiveWorkbook.Saved = True
		Application.ActiveWorkbook.Close
	Next
End Sub

Az exportált szövegfájlok szintén a dokumentumok mappába. Lásd a képernyőképet:


Több / összes lap mentése, exportálása vagy konvertálása csv vagy szövegfájlba a Kutools for Excel programmal

YAz Excel alkalmazással gyorsan vagy több lapot exportálhat vagy konvertálhat különálló csv fájlokba, szöveges fájlokba vagy xls fájl formátumba Felosztott munkafüzet hasznossága Kutools az Excel számára.

Alkalmazás előtt Kutools az Excel számáraKérjük, először töltse le és telepítse.

1. kettyenés Kutools Plus > Munkafüzet > Felosztott munkafüzet. Lásd a képernyőképet:

2. Ban,-ben Felosztott munkafüzet párbeszédablak:

  • 1). Ha az összes lapot csv- vagy szövegfájlokká kívánja konvertálni, csak jelölje be az összes lapnevet a Munkalap neve doboz; Ha csak több lapot szeretne konvertálni, akkor folyamatosan ellenőrizze őket, és törölje azoknak a más lapoknak a jelölését, amelyeket nem szeretne átalakítani.
  • 2). Ban,-ben Opciók szakasz, ellenőrizze a Mentés típus négyzetet, majd válassza a lehetőséget Unicode szöveg (*. Txt) or CSV (Macintosh) (*. Csv) a legördülő listából.
  • 3). Kattints a Hasított gombot.

3. Ban,-ben Tallózás a mappába párbeszédpanelen adjon meg egy mappát az exportált fájlok mentéséhez, majd kattintson a gombra OK gombot.

Most az összes lapot vagy a megadott lapokat külön csv- vagy szövegfájlokká konvertálja, és a fent megadott módon keresse meg a mappában.

  Ha ingyenes (30 napos) próbaverziót szeretne kapni a segédprogramról, kattintson a letöltéshez, majd lépjen a művelet végrehajtására a fenti lépések szerint.


Több / összes lap mentése, exportálása vagy konvertálása csv vagy szövegfájlba a Kutools for Excel programmal


A legjobb irodai termelékenységi eszközök

A Kutools for Excel megoldja a legtöbb problémát, és 80% -kal növeli a termelékenységet

  • újrafelhasználás: Gyorsan helyezze be összetett képletek, diagramok és bármi, amit korábban használt; Cellák titkosítása jelszóval; Levelezőlista létrehozása és e-maileket küldeni ...
  • Szuper Formula Bár (könnyedén szerkeszthet több szöveget és képletet); Olvasás elrendezés (könnyen olvasható és szerkeszthető nagyszámú cella); Beillesztés a Szűrt tartományba...
  • Cellák / sorok / oszlopok egyesítése az adatok elvesztése nélkül; Osztott cellák tartalma; Kombinálja a duplikált sorokat / oszlopokat... megakadályozza az ismétlődő cellákat; Hasonlítsa össze a tartományokat...
  • Válassza a Másolat vagy az Egyedi lehetőséget Sorok; Válassza az Üres sorok lehetőséget (az összes cella üres); Super Find és Fuzzy Find sok munkafüzetben; Véletlenszerű kiválasztás ...
  • Pontos másolás Több cella a képletreferencia megváltoztatása nélkül; Automatikus referenciák létrehozása több lapra; Helyezze be a golyókat, Jelölőnégyzetek és még sok más ...
  • Kivonat szöveg, Szöveg hozzáadása, Eltávolítás pozíció szerint, Hely eltávolítása; Hozz létre és nyomtasson személyhívó részösszegeket; Konvertálás a cellatartalom és a megjegyzések között...
  • Szuper szűrő (mentse el és alkalmazza a szűrősémákat más lapokra); Haladó rendezés hónap / hét / nap, gyakoriság és egyebek szerint; Speciális szűrő félkövér, dőlt betűvel ...
  • Kombinálja a munkafüzeteket és a munkalapokat; Táblázatok egyesítése kulcsoszlopok alapján; Az adatok felosztása több lapra; Kötegelt konvertálás xls, xlsx és PDF...
  • Több mint 300 hatékony funkció. Támogatja az Office / Excel 2007-2019 és 365. Támogatja az összes nyelvet. Könnyen telepíthető a vállalkozásba vagy szervezetbe. 30 napos ingyenes próbaverzió. 60 napos pénzvisszafizetési garancia.
kte lap 201905

Az Office fül a füles felületet hozza az Office-ba, és sokkal könnyebbé teszi a munkáját

  • Füles szerkesztés és olvasás engedélyezése Wordben, Excelben és PowerPointban, Publisher, Access, Visio és Project.
  • Több dokumentum megnyitása és létrehozása ugyanazon ablak új lapjain, mint új ablakokban.
  • 50% -kal növeli a termelékenységet, és naponta több száz kattintással csökkenti az egér kattintását!
officetab alja
Say something here...
symbols left.
You are guest
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    Tim · 28 days ago
    Thanks! I used this to save all the sheets of my .xlsx file into differents .xlsx

    Sub ExportSheetsToXLSX()
    Dim xWs As Worksheet
    Dim xcsvFile As String
    For Each xWs In Application.ActiveWorkbook.Worksheets
    xWs.Copy
    xlsxFile = CurDir & "\" & xWs.Name & ".xlsx"
    Application.ActiveWorkbook.SaveAs Filename:=xlsxFile, _
    FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
    Application.ActiveWorkbook.Saved = True
    Application.ActiveWorkbook.Close
    Next
    End Sub
  • To post as a guest, your comment is unpublished.
    nathan · 2 years ago
    how would I change the code to have it save in a different file format such as an xlsx? or ASCII.
  • To post as a guest, your comment is unpublished.
    folivo1980 · 2 years ago
    So, this is great! BUT, what if I need to split a workbook into .csv but for PC, not MAC? If anyone has a way of doing it, please help me out. I will be very grateful.
    • To post as a guest, your comment is unpublished.
      crystal · 1 years ago
      Hi,
      The first VBA code in this post can do you a favor.
  • To post as a guest, your comment is unpublished.
    tarahjcollins@gmail.com · 2 years ago
    Is there a way to use this code to export only a certain range to a .csv file of each sheet in a book?
    • To post as a guest, your comment is unpublished.
      crystal · 2 years ago
      Hi,
      The VBA code in this article may do you a favor: https://www.extendoffice.com/documents/excel/2897-excel-export-range-to-csv.html
  • To post as a guest, your comment is unpublished.
    GrifoDeGrifis · 2 years ago
    Hello,
    thank you so much for a great macro, it works like a charm! But I have a question, what if I would like to save this macro (CSV version) on PERSONAL.xlsb as to make it available on any excel instance?

    When I try, CurDir takes the PERSONAL directory, instead of the active worksheet one...

    Thank you for any help!
    • To post as a guest, your comment is unpublished.
      crystal · 2 years ago
      Hi Mirko,
      Method in this article can do you a favor: https://trumpexcel.com/personal-macro-workbook/.
  • To post as a guest, your comment is unpublished.
    sharmaarvind951@gmail.com · 3 years ago
    If you just want to convert multiple sheets, keep checking them and going to uncheck other sheets you don’t want to convert
    sir for thuis step do you have macro
    • To post as a guest, your comment is unpublished.
      crystal · 3 years ago
      Good day,
      Can't help with VBA code for this. Why not try the Split Workbook utility we provide in the post? It will save your time and you will love it.
  • To post as a guest, your comment is unpublished.
    sai · 3 years ago
    Superb solution.....Its saved my time.......Thank you
  • To post as a guest, your comment is unpublished.
    info@cameronstewart.com.au · 3 years ago
    Thanks - script very useful
  • To post as a guest, your comment is unpublished.
    Ken · 3 years ago
    A, I see now that the line "VBA code: Export all sheets to separated csv files" should not be copied into the code area. Perhaps that can be more explicit for newbies, and for people who follow instructions explicitly.
    • To post as a guest, your comment is unpublished.
      crystal · 3 years ago
      Hi Ken,
      That's the description line of the code. The line "Sub ExportSheetsToCSV()" should be the first line of the code.
      I'm sorry for the inconvenience.
  • To post as a guest, your comment is unpublished.
    ritz · 3 years ago
    1) I have a workbook with multiple sheets in it.
    2) Those multiple sheets are having multiple columns.
    3) I have one column in each sheet which is concatenation of all the other columns.
    4) Now, I want to extract that concatenated column to a text file with the same name as sheet name.
    5) The way I want is I just press one button and it should look for all the tabs, extract that column (say concatenated column is AA) from each sheet, put that into a text file, name the text file same as sheet name and store in some directory on my desktop say H drive.
    • To post as a guest, your comment is unpublished.
      crystal · 3 years ago
      Good Day,
      Sorry can’t help with this, you can post your question in our forum: https://www.extendoffice.com/forum.html to get more Excel supports from our professional.
  • To post as a guest, your comment is unpublished.
    vincent.abhishek@gmail.com · 3 years ago
    I need a macro to convert all the tabs in a excel file to different set of files.
    • To post as a guest, your comment is unpublished.
      crystal · 3 years ago
      Good Day,
      Which files do you want to include in your "different set of files"?
  • To post as a guest, your comment is unpublished.
    tauseefamin@gmail.com · 4 years ago
    hi i need a macro which convert pipe "|" separated csv into xlsx asking folder name not a single file. i need it on urgent basis.


    Regards,
    • To post as a guest, your comment is unpublished.
      crystal · 4 years ago
      Sorry can't solve this problem
  • To post as a guest, your comment is unpublished.
    ashish · 4 years ago
    hello alex please could you display the code to save the files in csv format except the documents folder
  • To post as a guest, your comment is unpublished.
    Amit Chaudhary · 4 years ago
    Hi,
    Thanks for the code, I just have a small clarification. Currently when the CSV file generates it's delimited by comma ",". even though my system setting is for CSV the delimited should be pipe "|". Not sure why the CSV is generated with comma delimiter with the above code. Is there a way i can explicitly define the delimiter for the CSV file.

    Looking for your reply soonest.
    Thank.
    Regards,
    Amit
  • To post as a guest, your comment is unpublished.
    Tallrific · 4 years ago
    I'm writing to determine if your application can convert multiple xls sheets to one text file and how it would order the rows. I need to have an option to order the rows in order of appearance, one line at a time one sheet at a time. Sheet 1, row 1; sheet 2, row 1, sheet 3, row1, etc. I look forward to your feedback.
  • To post as a guest, your comment is unpublished.
    Mike · 5 years ago
    Thanks for the macros, they were just what I needed.
    However, using "CurDir" to build the output filepath is very dangerous as it is not necessarily the folder of the Excel file that was opened - it is generally the current folder in explorer so your files could end up getting written practically anywhere. You should use Application.ThisWorkbook.Path instead.
  • To post as a guest, your comment is unpublished.
    Nicolas · 5 years ago
    Hi, thank you for the code, is it possible to skip some sheets and only save a few?
    I've got no idea how I should start. Could you help me?

    Nicolas
  • To post as a guest, your comment is unpublished.
    Alex K123456789 · 5 years ago
    Is there any way to have the CSV files save to a folder other than the Documents folder?
    • To post as a guest, your comment is unpublished.
      Paul · 5 years ago
      [quote name="Alex K123456789"]Is there any way to have the CSV files save to a folder other than the Documents folder?[/quote]
      I haven't tested it, but I'm pretty the "\" in this line stands for the working directory: xcsvFile = CurDir & "\" & xWs.Name & ".csv"
      If you want to change the working directory, you'll have to add another command.
      If you want to save it to a folder within the working directory, say in a folder called new you just replace "\" with "\New\".
      Something along those lines.
      • To post as a guest, your comment is unpublished.
        ALEX K123456789 · 5 years ago
        Thank you very much Paul. I wound up figuring it out a little while back, but your solution is exactly what I did.
        • To post as a guest, your comment is unpublished.
          Dawn · 4 years ago
          Hi Alex,
          Could you show me the line of code you entered in place of the "\" please? I need to be able to save these .csv files to a location on our network rather than in my local WS library. We need to allow our Customer Service people to be able to access the file and rename the location each time it is used.
          I encounter bug problems with simply changing "\" to "\New\" (the VBA code does work as expected when copied straight from the info above). I am not code saavy, but I can follow directions fairly well, so any help is appreciated!
          • To post as a guest, your comment is unpublished.
            Alex K123456789 · 4 years ago
            [quote name="Dawn"]Hi Alex,
            Could you show me the line of code you entered in place of the "\" please? I need to be able to save these .csv files to a location on our network rather than in my local WS library. We need to allow our Customer Service people to be able to access the file and rename the location each time it is used.
            I encounter bug problems with simply changing "\" to "\New\" (the VBA code does work as expected when copied straight from the info above). I am not code saavy, but I can follow directions fairly well, so any help is appreciated![/quote]

            Hi Dawn, I wound up having to re-write portions and like Paul suggested, used a slightly different command. Below is the command I wrote to refresh the data in my workbook from our Data Warehouse, then refresh pivot tables and ultimately save one of the sheets as a PDF to my drive:

            ActiveWorkbook.RefreshAll
            Sheets("Karth").Select
            Range("B22").Select
            ActiveSheet.PivotTables("Karth_Appd_Wkly").PivotCache.Refresh
            Sheets("Start").Select
            Sheets("Karth").ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
            "K:\K\Analytics\Reports\Sales\SM Reports\SM Summary_Karth.pdf" _
            , Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas _
            :=False, OpenAfterPublish:=False
            End Sub
        • To post as a guest, your comment is unpublished.
          Paul · 5 years ago
          Nice! Thanks for the reply, it also means a lot to me to know that my solution is the correct one. Cheers!