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

Cum se salvează, se exportă mai multe / toate foile pentru a separa fișiere CSV sau text în Excel?

Când utilizați Excel, puteți salva manual o foaie de lucru ca fișier csv sau text utilizând funcția Salvare ca. Cu toate acestea, pentru a converti mai multe sau toate foile de lucru dintr-un registru de lucru în fișiere csv sau text separate, cum puteți face? În acest articol, vă vom arăta metode pentru a salva sau a converti mai multe foi sau toate foile în fișiere csv sau text separate.

Salvați, exportați sau convertiți toate foile în CSV sau fișier text cu cod VBA
Salvați, exportați sau convertiți mai multe / toate foile în CSV sau fișier text cu Kutools pentru Excel


Salvați, exportați sau convertiți toate foile în CSV sau fișier text cu cod VBA

Cu codurile VBA de mai jos, puteți salva toate foile de lucru dintr-un registru de lucru în fișiere csv sau text separate. Vă rugăm să faceți următoarele.

Exportați sau convertiți toate foile în fișiere CSV

1. presa Alt + F11 tastele simultan pentru a deschide Aplicația Microsoft Visual Basic fereastră.

2. În Aplicația Microsoft Visual Basic fereastră, faceți clic pe Insera > Module. Apoi copiați și lipiți următorul cod în Module fereastră.

Cod VBA: Exportați toate foile în fișiere CSV separate

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. apasă pe F5 tasta pentru a rula codul. Veți vedea că toate fișierele CSV exportate se află pe Documente pliant. Vedeți captura de ecran:

Exportați sau convertiți toate foile în fișiere text

Următorul cod vă poate ajuta să exportați sau să convertiți toate foile din registrul de lucru în fișiere text separate.

Cod VBA: exportați toate foile în fișiere text separate

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

Fișierele text exportate sunt, de asemenea, localizate pe Documente pliant. Vedeți captura de ecran:


Salvați, exportați sau convertiți mai multe / toate foile în CSV sau fișier text cu Kutools pentru Excel

YPuteți exporta sau converti rapid mai multe sau toate foile în fișiere CSV individuale, fișiere text sau format de fișiere XLS în Excel cu Carnet de lucru divizat utilitatea Kutools pentru Excel.

Înainte de a aplica Kutools pentru Excel, Vă rugăm să descărcați-l și instalați-l mai întâi.

1. clic Kutools Plus > Workbook > Carnet de lucru divizat. Vedeți captura de ecran:

2. În Carnet de lucru divizat căsuță de dialog:

  • 1). Dacă doriți să convertiți toate foile în fișiere CSV sau text, păstrați toate numele foilor verificate în Numele foii de lucru cutie; Dacă doriți doar să convertiți mai multe foi, continuați să le verificați și să debifați alte foi pe care nu doriți să le convertiți.
  • 2). În Opţiuni secțiune, verificați Salvați ca tip caseta și apoi selectați Text Unicode (*. Txt) or CSV (Macintosh) (*. Csv) din lista drop-down.
  • 3). Apasă pe Despică butonul.

3. În Căutați dosarul caseta de dialog, specificați un folder pentru a salva fișierele exportate, apoi faceți clic pe OK butonul.

Acum, toate foile sau foile specificate sunt convertite în fișiere csv sau text separate și localizați în folder așa cum ați specificat mai sus.

  Dacă doriți să aveți o încercare gratuită (30-zi) a acestei utilitati, vă rugăm să faceți clic pentru a-l descărca, și apoi mergeți pentru a aplica operația conform pașilor de mai sus.


Salvați, exportați sau convertiți mai multe / toate foile în CSV sau fișier text cu Kutools pentru Excel


Cele mai bune instrumente de productivitate Office

Kutools pentru Excel vă rezolvă majoritatea problemelor și vă crește productivitatea cu 80%

  • reutilizarea: Introduceți rapid formule complexe, diagrame și orice ai folosit anterior; Criptați celulele cu parola; Creați o listă de corespondență și trimiteți e-mailuri ...
  • Super Formula Bar (editați cu ușurință mai multe linii de text și formulă); Layout de citire (citiți și editați cu ușurință un număr mare de celule); Lipiți la interval filtrat...
  • Merge celule / rânduri / coloane fără a pierde date; Conținut de celule divizate; Combinați rânduri / coloane duplicate... Prevenirea celulelor duplicate; Comparați gamele...
  • Selectați Duplicat sau Unic Rânduri; Selectați Rânduri goale (toate celulele sunt goale); Super Find și Fuzzy Find în multe cărți de lucru; Selectare aleatorie ...
  • Copie exactă Mai multe celule fără modificarea referinței formulelor; Creați automat referințe la foi multiple; Introduceți gloanțe, Casete de selectare și multe altele ...
  • Extrageți textul, Adăugați text, eliminați după poziție, Eliminați spațiul; Creați și imprimați subtotaluri de paginare; Convertiți conținutul dintre celule și comentarii...
  • Super Filtru (salvați și aplicați scheme de filtrare altor foi); Sortare avansată după lună / săptămână / zi, frecvență și multe altele; Filtru special cu bold, italic ...
  • Combinați cărți de lucru și foi de lucru; Merge Tables pe baza coloanelor cheie; Împărțiți datele în mai multe foi; Conversia în loturi xls, xlsx și PDF...
  • Peste 300 de funcții puternice. Suportă Office / Excel 2007-2021 și 365. Acceptă toate limbile. Implementare ușoară în întreprinderea sau organizația dvs. Funcții complete Probă gratuită de 30 de zile. Garanție de returnare a banilor de 60 de zile.
fila kte 201905

Fila Office aduce interfața cu file în Office și vă face munca mult mai ușoară

  • Activați editarea și citirea cu file în Word, Excel, PowerPoint, Publisher, Access, Visio și Project.
  • Deschideți și creați mai multe documente în filele noi ale aceleiași ferestre, mai degrabă decât în ​​ferestrele noi.
  • Vă crește productivitatea cu 50% și reduce sute de clicuri de mouse pentru dvs. în fiecare zi!
fundul officetab
Comentarii (37)
Încă nu există evaluări. Fii primul care evaluează!
Acest comentariu a fost redus la minimum de moderatorul de pe site
Există vreo modalitate de a salva fișierele CSV într-un alt folder decât folderul Documente?
Acest comentariu a fost redus la minimum de moderatorul de pe site
[quote]Există vreo modalitate de a salva fișierele CSV într-un folder altul decât dosarul Documente?De Alex K123456789[/quote] Nu l-am testat, dar sunt destul de "\" din această linie reprezintă directorul de lucru: xcsvFile = CurDir & "\" & xWs.Name & ".csv" Dacă doriți să schimbați directorul de lucru, va trebui să adăugați o altă comandă. Dacă doriți să-l salvați într-un folder din directorul de lucru, spuneți că într-un folder numit nou înlocuiți „\” cu „\New\”. Ceva în acest sens.
Acest comentariu a fost redus la minimum de moderatorul de pe site
Mulțumesc mult Paul. Am ajuns să-mi dau seama cu puțin timp în urmă, dar soluția ta este exact ceea ce am făcut.
Acest comentariu a fost redus la minimum de moderatorul de pe site
Grozav! Mulțumesc pentru răspuns, înseamnă foarte mult pentru mine să știu că soluția mea este cea corectă. Noroc!
Acest comentariu a fost redus la minimum de moderatorul de pe site
Bună Alex, Îmi poți arăta linia de cod pe care ai introdus-o în locul „\” te rog? Trebuie să pot salva aceste fișiere .csv într-o locație din rețeaua noastră, mai degrabă decât în ​​biblioteca mea locală WS. Trebuie să le permitem oamenilor de la Serviciul Clienți să poată accesa fișierul și să redenumească locația de fiecare dată când este utilizat. Întâmpin probleme de eroare prin simpla schimbare a „\” în „\New\” (codul VBA funcționează conform așteptărilor când este copiat direct din informațiile de mai sus). Nu sunt înțelept de cod, dar pot urma destul de bine instrucțiunile, așa că orice ajutor este apreciat!
Acest comentariu a fost redus la minimum de moderatorul de pe site
[quote]Bună Alex, Îmi puteți arăta linia de cod pe care ați introdus-o în locul „\” vă rog? Trebuie să pot salva aceste fișiere .csv într-o locație din rețeaua noastră, mai degrabă decât în ​​biblioteca mea locală WS. Trebuie să le permitem oamenilor de la Serviciul Clienți să poată accesa fișierul și să redenumească locația de fiecare dată când este utilizat. Întâmpin probleme de eroare prin simpla schimbare a „\” în „\New\” (codul VBA funcționează conform așteptărilor când este copiat direct din informațiile de mai sus). Nu sunt înțelept de cod, dar pot urma destul de bine instrucțiunile, așa că orice ajutor este apreciat!De zori[/quote] Bună Dawn, am ajuns să rescriu porțiuni și, așa cum a sugerat Paul, am folosit o comandă puțin diferită. Mai jos este comanda pe care am scris-o pentru a reîmprospăta datele din registrul meu de lucru din Depozitul nostru de date, apoi pentru a reîmprospăta tabelele pivot și în cele din urmă pentru a salva una dintre foi ca PDF pe unitatea mea: ActiveWorkbook.RefreshAll Sheets("Karth").Select Range(" B22").Selectați 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
Acest comentariu a fost redus la minimum de moderatorul de pe site
Bună, mulțumesc pentru cod, este posibil să săriți peste câteva foi și să salvați doar câteva? Nu am idee cum ar trebui să încep. Ai putea sa ma ajuti? Nicolas
Acest comentariu a fost redus la minimum de moderatorul de pe site
Mulțumesc pentru macrocomenzi, erau exact ceea ce aveam nevoie. Cu toate acestea, folosirea „CurDir” pentru a construi calea fișierului de ieșire este foarte periculoasă, deoarece nu este neapărat folderul fișierului Excel care a fost deschis - este, în general, folderul curent din Explorer, astfel încât fișierele dvs. ar putea ajunge să fie scrise practic oriunde. În schimb, ar trebui să utilizați Application.ThisWorkbook.Path.
Acest comentariu a fost redus la minimum de moderatorul de pe site
Scriu pentru a determina dacă aplicația dvs. poate converti mai multe foi xls într-un fișier text și cum ar ordona rândurile. Trebuie să am o opțiune de a ordona rândurile în ordinea apariției, câte o linie, câte o foaie. Foaia 1, rândul 1; foaia 2, rândul 1, foaia 3, rândul 1 etc. Aștept cu nerăbdare feedback-ul dumneavoastră.
Acest comentariu a fost redus la minimum de moderatorul de pe site
Bună, mulțumesc pentru cod, am doar o mică clarificare. În prezent, când se generează fișierul CSV, acesta este delimitat prin virgulă ",". chiar dacă setarea mea de sistem este pentru CSV, delimitat ar trebui să fie conducta „|”. Nu sunt sigur de ce CSV este generat cu delimitator de virgulă cu codul de mai sus. Există vreo modalitate prin care pot defini în mod explicit delimitatorul pentru fișierul CSV. Vă aștept răspunsul cât mai curând. Multumesc. Cu respect, Amit
Acest comentariu a fost redus la minimum de moderatorul de pe site
salut alex, te rog, poți afișa codul pentru a salva fișierele în format csv, cu excepția folderului documente
Acest comentariu a fost redus la minimum de moderatorul de pe site
salut, am nevoie de o macrocomandă care să convertească conducta „|” csv separat în xlsx cerând numele folderului nu un singur fișier. am nevoie urgent.


Salutari,
Acest comentariu a fost redus la minimum de moderatorul de pe site
Îmi pare rău că nu pot rezolva această problemă
Acest comentariu a fost redus la minimum de moderatorul de pe site
Am nevoie de o macrocomandă pentru a converti toate filele dintr-un fișier Excel într-un set diferit de fișiere.
Acest comentariu a fost redus la minimum de moderatorul de pe site
O zi buna,
Ce fișiere doriți să includeți în „un set diferit de fișiere”?
Acest comentariu a fost redus la minimum de moderatorul de pe site
1) Am un registru de lucru cu mai multe foi în el.
2) Acele foi multiple au mai multe coloane.
3) Am o coloană în fiecare foaie care este o concatenare a tuturor celorlalte coloane.
4) Acum, vreau să extrag acea coloană concatenată într-un fișier text cu același nume cu numele foii.
5) Cum vreau eu este să apas un singur buton și ar trebui să caute toate filele, să extrag acea coloană (să spunem că coloana concatenată este AA) din fiecare foaie, să o pun într-un fișier text, să numesc fișierul text la fel ca numele foii și stocați într-un director de pe desktop-ul meu, spune unitatea H.
Acest comentariu a fost redus la minimum de moderatorul de pe site
O zi buna,
Ne pare rău că nu vă pot ajuta cu asta, puteți posta întrebarea dvs. pe forumul nostru: https://www.extendoffice.com/forum.html pentru a obține mai multe suporturi Excel de la profesioniștii noștri.
Acest comentariu a fost redus la minimum de moderatorul de pe site
R, văd acum că linia „Cod VBA: Exportați toate foile în fișiere csv separate” nu trebuie copiată în zona de cod. Poate că acest lucru poate fi mai explicit pentru începători și pentru cei care urmează instrucțiunile în mod explicit.
Acest comentariu a fost redus la minimum de moderatorul de pe site
Hi Ken,
Aceasta este linia de descriere a codului. Linia „Sub ExportSheetsToCSV()” ar trebui să fie prima linie a codului.
Îmi pare rău pentru inconvenient.
Acest comentariu a fost redus la minimum de moderatorul de pe site
Mulțumesc - script-ul foarte util
Acest comentariu a fost redus la minimum de moderatorul de pe site
Soluție superbă.....Mi-a economisit timp.......Mulțumesc
Acest comentariu a fost redus la minimum de moderatorul de pe site
Dacă doriți doar să convertiți mai multe foi, continuați să le verificați și să debifați celelalte foi pe care nu doriți să le convertiți
domnule pentru acest pas aveți macro
Acest comentariu a fost redus la minimum de moderatorul de pe site
Bună ziua,
Nu te pot ajuta cu codul VBA pentru asta. De ce să nu încercați utilitarul Split Workbook pe care îl oferim în postare? Îți va economisi timp și îl vei iubi.
Acest comentariu a fost redus la minimum de moderatorul de pe site
Buna,
mulțumesc mult pentru o macrocomandă grozavă, funcționează ca un farmec! Dar am o întrebare, ce se întâmplă dacă aș dori să salvez această macrocomandă (versiunea CSV) pe PERSONAL.xlsb pentru a o face disponibilă pe orice instanță Excel?

Când încerc, CurDir ia directorul PERSONAL, în loc de cel activ din foaia de lucru...

Vă mulțumim pentru orice ajutor!
Acest comentariu a fost redus la minimum de moderatorul de pe site
Salut Mirko,
Metoda din acest articol vă poate face o favoare: https://trumpexcel.com/personal-macro-workbook/.
Acest comentariu a fost redus la minimum de moderatorul de pe site
Există vreo modalitate de a utiliza acest cod pentru a exporta doar un anumit interval într-un fișier .csv al fiecărei foi dintr-o carte?
Acest comentariu a fost redus la minimum de moderatorul de pe site
Bună,
Codul VBA din acest articol vă poate face o favoare: https://www.extendoffice.com/documents/excel/2897-excel-export-range-to-csv.html
Acest comentariu a fost redus la minimum de moderatorul de pe site
Deci, asta este grozav! DAR, ce se întâmplă dacă trebuie să împart un registru de lucru în .csv, dar pentru PC, nu MAC? Daca cineva are o modalitate de a face, va rog sa ma ajutati. Voi fi foarte recunoscător.
Acest comentariu a fost redus la minimum de moderatorul de pe site
Bună,
Primul cod VBA din această postare vă poate face o favoare.
Acest comentariu a fost redus la minimum de moderatorul de pe site
cum aș schimba codul pentru a-l salva într-un alt format de fișier, cum ar fi xlsx? sau ASCII.
Acest comentariu a fost redus la minimum de moderatorul de pe site
Mulțumiri! Am folosit acest lucru pentru a salva toate foile fișierului meu .xlsx în diferite .xlsx
Sub Export SheetsToXLSX()
Dim xWs ca fișă de lucru
Dim xcsvFile ca șir
Pentru fiecare xWs din Application.ActiveWorkbook.Worksheets
xWs.Copie
xlsxFile = CurDir & „\” & xWs.Name & „.xlsx”
Application.ActiveWorkbook.SaveAs Filename:=xlsxFile, _
FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
Application.ActiveWorkbook.Saved = Adevărat
Application.ActiveWorkbook.Close
Pagina Următoare →
End Sub
Acest comentariu a fost redus la minimum de moderatorul de pe site
Bună, mulțumesc pentru codul minunat, este minunat (exportați toate foile în fișiere text separate)! L-am folosit de multe ori, dar a întâlnit un fișier în care nu va funcționa, depanatorul spune eroare de rulare 1004 și acea copie a metodei a eșuat a unei foi de lucru și marchează linia xWs.Copy. Există vreo regulă cu privire la numele unei foi de lucru care să nu permită rularea codului?
Acest comentariu a fost redus la minimum de moderatorul de pe site
Bună, mulțumesc pentru codul grozav (exportați toate foile în fișiere text separate), folosindu-l foarte mult. Tocmai am întâlnit un registru de lucru în care nu va funcționa, depanatorul spune că linia xWs.Copy este o problemă, pop-up spune că metoda de copiere a unui registru de lucru a eșuat. Există restricții cu privire la numele unei foi de lucru sau ceva similar, cum ar fi fără celule îmbinate etc..?

Multumesc pentru raspuns :)
Acest comentariu a fost redus la minimum de moderatorul de pe site
Bună BI,
Foaia ta de lucru conține un tabel pivot? Ne puteți furniza datele dumneavoastră pentru testare? Dacă nu vă deranjează, încărcați fișierul exemplu aici.
Nu există comentarii postate aici încă
Încărcați mai
Lăsa comentarii
Postare ca invitat
×
Evaluează această postare:
0   Caractere
Locații sugerate

Urmărește-ne

Copyright © 2009 - www.extendoffice.com. | Toate drepturile rezervate. Cu sprijinul ExtendOffice. | Harta site-ului
Microsoft și sigla Office sunt mărci comerciale sau mărci comerciale înregistrate ale Microsoft Corporation în Statele Unite și / sau în alte țări.
Protejat de Sectigo SSL