Note: The other languages of the website are Google-translated. Back to English
Մուտք  \/ 
x
or
x
Գրանցում  \/ 
x

or

Ինչպե՞ս Excel- ում բազմակի Excel ֆայլեր CSV ֆայլերի փոխարկել:

Excel- ում մենք կարող ենք աշխատանքային գիրքը CSV ֆայլ դարձնել Save as գործառույթով, բայց կարո՞ղ եք իմանալ, թե ինչպես Excel- ի բազմաթիվ ֆայլեր խմբաքանակ դարձնել CSV ֆայլերն առանձնացնելու համար: Այս հոդվածում ես ներկայացնում եմ VBA կոդ ՝ թղթապանակում գտնվող բոլոր Excel ֆայլերը խմբաքանակի մեջ Excel- ում CSV ֆայլերի փոխարկելու համար:

Թղթապանակի Excel ֆայլերը խմբաքանակով փոխակերպում են VBA- ի CSV ֆայլերի

Excel- ի համար Kutools- ով աշխատանքային գրքի թերթերը վերափոխեք առանձին CSV ֆայլերիլավ գաղափար 3


Թղթապանակի Excel ֆայլերը խմբաքանակով փոխակերպում են VBA- ի CSV ֆայլերի

Excel- ում չկա ներկառուցված գործառույթ, որը կարող է արագ լուծել այս գործը, բացառությամբ VBA- ի:

1. Միացնել Excel- ը և սեղմել Alt + F11 ստեղները բաց են Microsoft Visual Basic հավելվածների համար պատուհան.

2: սեղմեք Տեղադրել > Մոդուլներ ստեղծել նոր Մոդուլ:

3. Պատճենեք ներքևի կոդը և տեղադրեք դրանք նոր Մոդուլի պատուհանում:

VBA. Փոփոխական Excel ֆայլերը CSV են դարձնում

Sub WorkbooksSaveAsCsvToFolder()
'UpdatebyExtendoffice20181031
Dim xObjWB As Workbook
Dim xObjWS As Worksheet
Dim xStrEFPath As String
Dim xStrEFFile As String
Dim xObjFD As FileDialog
Dim xObjSFD As FileDialog
Dim xStrSPath As String
Dim xStrCSVFName As String

    Application.ScreenUpdating = False
    Application.EnableEvents = False
    Application.Calculation = xlCalculationManual
    On Error Resume Next
Set xObjFD = Application.FileDialog(msoFileDialogFolderPicker)
    xObjFD.AllowMultiSelect = False
    xObjFD.Title = "Kutools for Excel - Select a folder which contains Excel files"
    If xObjFD.Show <> -1 Then Exit Sub
    xStrEFPath = xObjFD.SelectedItems(1) & "\"

    Set xObjSFD = Application.FileDialog(msoFileDialogFolderPicker)

    xObjSFD.AllowMultiSelect = False
    xObjSFD.Title = "Kutools for Excel - Select a folder to locate CSV files"
    If xObjSFD.Show <> -1 Then Exit Sub
    xStrSPath = xObjSFD.SelectedItems(1) & "\"

    xStrEFFile = Dir(xStrEFPath & "*.xls*")

    Do While xStrEFFile <> ""
        Set xObjWB = Workbooks.Open(Filename:=xStrEFPath & xStrEFFile)
        xStrCSVFName = xStrSPath & Left(xStrEFFile, InStr(1, xStrEFFile, ".") - 1) & ".csv"
        xObjWB.SaveAs Filename:=xStrCSVFName, FileFormat:=xlCSV
        xObjWB.Close savechanges:=False
        xStrEFFile = Dir
  Loop
    Application.Calculation = xlCalculationAutomatic
    Application.EnableEvents = True
    Application.ScreenUpdating = True
End Sub

4. Մամուլ F5 ստեղնը, ընտրեք պանակը, որը պարունակում է Excel ֆայլեր, որոնք ցանկանում եք փոխարկել CSV ֆայլերի առաջին բացվող երկխոսության մեջ:
doc խմբաքանակը դեպի csv 1

5: սեղմեք OK, ապա երկրորդ ելնող երկխոսության մեջ ընտրեք թղթապանակը CSV ֆայլերը տեղադրելու համար:
doc խմբաքանակը դեպի csv 2

6: սեղմեք OK, այժմ թղթապանակում գտնվող Excel ֆայլերը փոխարկվել են CSV ֆայլերի և պահվում են մեկ այլ պանակում:
doc խմբաքանակը դեպի csv 3


Excel- ի համար Kutools- ով աշխատանքային գրքի թերթերը վերափոխեք առանձին CSV ֆայլերի

Ինչպես հայտնի է, մենք կարող ենք ամբողջ աշխատանքային գրքույկը Excel- ում վերափոխել միայն մեկ CSV ֆայլի ՝ իր Save As գործառույթով: Բայց որոշ ժամանակներում դուք ցանկանում եք մեկ թերթը փոխարկել CSV ֆայլ, այս դեպքում ՝ Պառակտում աշխատանքային գրքույկ օգտակարությունը Excel- ի համար նախատեսված գործիքներ կարող է օգնել ձեզ.

Excel- ի համար նախատեսված գործիքներ, ավելի քան 300 հարմար գործառույթներ, ավելի հեշտացնում է ձեր գործերը: 

Տեղադրելուց հետո Excel- ի համար նախատեսված գործիքներ, խնդրում ենք վարվել ինչպես ստորև ՝(Անվճար ներբեռնեք Kutools- ի համար Excel- ը հիմա!)

1. Միացրեք աշխատանքային գիրքը, որը ցանկանում եք փոխել դրա թերթերը որպես առանձին CSV ֆայլեր, կտտացրեք Kutools Plus > Աշխատանքային տետր > Պառակտում աշխատանքային գրքույկ.
doc խմբաքանակը դեպի csv 4

2. Մեջ Պառակտում աշխատանքային գրքույկ երկխոսություն, ստուգեք թերթիկի անունը, որը ցանկանում եք բաժանել (բոլոր թերթերը ստուգվում են ըստ լռելյայն), ստուգեք Պահպանել որպես տեսակ, ընտրիր CSV (Macintosh) (* .CSV) բացվող ցուցակից:
doc խմբաքանակը դեպի csv 5

3: սեղմեք պառակտում դուրս գալ ա Թերթիր պանակի համար երկխոսություն, ընտրեք կամ ստեղծեք պանակ CSV ֆայլերը տեղադրելու համար:
doc խմբաքանակը դեպի csv 6

4: սեղմեք OK, այժմ աշխատանքային գիրքը բաժանվել է որպես առանձին CSV ֆայլեր:
doc խմբաքանակը դեպի csv 7


Գրասենյակի արտադրողականության լավագույն գործիքները

Excel- ի համար նախատեսված Kutools- ը լուծում է ձեր խնդիրների մեծ մասը և բարձրացնում ձեր արտադրողականությունը 80% -ով

  • Վերաօգտագործել: Արագ տեղադրեք բարդ բանաձևեր, գծապատկերներ և այն ամենը, ինչ դուք նախկինում օգտագործել եք. Ryածկագրել բջիջները գաղտնաբառով; Ստեղծեք փոստային ցուցակ և նամակներ ուղարկել ...
  • Super Formula Bar (հեշտությամբ խմբագրեք տեքստի և բանաձևի բազմաթիվ տողեր); Ընթերցանության դասավորությունը (հեշտությամբ կարդալ և խմբագրել մեծ թվով բջիջներ); Տեղադրել ֆիլտրացված տիրույթում...
  • Միաձուլել բջիջները / տողերը / սյունակները առանց տվյալների կորստի. Պառակտված բջիջների պարունակությունը; Միավորել կրկնօրինակ տողերը / սյունակները... Կանխել կրկնօրինակ բջիջները; Համեմատեք միջակայքերը...
  • Ընտրեք Կրկնօրինակ կամ Եզակի Շարքեր; Ընտրեք դատարկ շարքեր (բոլոր բջիջները դատարկ են); Super Find և Fuzzy Find շատ աշխատանքային գրքույկներում; Պատահական ընտրություն ...
  • Actշգրիտ պատճեն Բազմաթիվ բջիջներ ՝ առանց բանաձևի հղումը փոխելու; Ավտոմատ ստեղծեք հղումներ դեպի մի քանի թերթեր; Տեղադրեք փամփուշտներ, Տուփեր և ավելին ...
  • Քաղվածք տեքստ, Տեքստ ավելացնել, հեռացնել ըստ դիրքի, Հեռացնել տարածությունը; Ստեղծել և տպել էջային ենթագոտիներ; Փոխարկել բջիջների բովանդակության և մեկնաբանությունների միջև...
  • Սուպեր զտիչ (պահպանել և կիրառել ֆիլտրի սխեմաները այլ թերթերի վրա); Ընդլայնված տեսակավորում ըստ ամիս / շաբաթ / օր, հաճախականություն և ավելին; Հատուկ զտիչ համարձակ, շեղատառով ...
  • Միավորել աշխատանքային տետրերը և աշխատանքային թերթերը; Միավորել աղյուսակները ՝ հիմնված հիմնական սյունակների վրա; Տվյալները բաժանեք մի քանի թերթերի; Խմբաքանակի փոխակերպում xls, xlsx և PDF...
  • Ավելի քան 300 հզոր առանձնահատկություններ, Աջակցում է Office / Excel 2007-2019 և 365. Աջակցում է բոլոր լեզուները: Հեշտ տեղակայում ձեր ձեռնարկությունում կամ կազմակերպությունում: Ամբողջական հատկություններ ՝ 30-օրյա անվճար փորձաշրջան: 60-օրյա գումարի վերադարձի երաշխիք:
kte էջանիշը 201905

Office Tab- ը Tabbed ինտերֆեյսը բերում է Office, և ձեր աշխատանքը շատ ավելի դյուրին դարձրեք

  • Միացնել ներդիրներով խմբագրումը և ընթերցումը Word, Excel, PowerPoint- ով, Հրատարակիչ, Access, Visio և Project:
  • Բացեք և ստեղծեք բազմաթիվ փաստաթղթեր նույն պատուհանի նոր ներդիրներում, այլ ոչ թե նոր պատուհաններում:
  • Բարձրացնում է ձեր արտադրողականությունը 50% -ով և նվազեցնում է ձեզ համար ամեն օր մկնիկի հարյուրավոր կտտոցներ:
officetab ներքևում
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.
    TBenson85 · 20 days ago
    Hello, is there a quick change to the code that would allow me to change from a CSV UTF-8 (Comma delimited) to just CSV (Comma delimited)? I tried the first method and was hopeful but it seems like it won't change them since they are already in some form of CSV.  Maybe there is an easier process but I can't find anything.  I have to convert maybe 150 files that were saved in this format and I don't want to open every file and Save As if I can avoid it.  Any help is appreciated!
    • To post as a guest, your comment is unpublished.
      TBenson85 · 20 days ago
      So, after reviewing the code a little closer, I saw where the initial file type had to be .xls.  So replacing with .csv has solved the issue.  
  • To post as a guest, your comment is unpublished.
    Jared · 1 months ago
    This is amazing. Thank-you!
  • To post as a guest, your comment is unpublished.
    wilfried · 3 months ago
    top thanks :) 
  • To post as a guest, your comment is unpublished.
    Sen · 1 years ago
    I think it is worth adding better error handling for files with special characters, currently they are simply ignored.
  • To post as a guest, your comment is unpublished.
    Justin · 1 years ago
    Thank you for sharing. I'm trying to save out multiple xls files which contain a unique value, producing a prompt asking yes or no before saving. The prompt reads..

    "Some features in your workbook might be lost if you save it as a CSV (Comma delimited). Do you want to keep using that format?"

    Would someone know where to add the code to answer yes to this prompt?
  • To post as a guest, your comment is unpublished.
    Sam · 2 years ago
    Another small remark:

    If the cells in the original Excel files are all formatted as "General", some accuracy is lost when the file is saved as a CSV
    For example, if a cell value in Excel is 0.123456789123456, then the value in the CSV will be 0.123456789 (missing the remaining decimals), as long as the cell was formatted as 'General'. This can be solved by formatting all cells in the Excel file to anything else than 'General' (for example, 'Text'). In that case, the CSV *will* still have the full detail/accuracy. I.e. the values in the Excel files will be fully intact after saving as a CSV.

    How could this macro be changes, so it sets the formatting of all cells in the Excel file to 'Text', before saving as a CSV?
    I imagine that it must somehow make use of the following, but I can't figure out how to correctly include in within the macro:

    Cells.Select
    Selection.NumberFormat = "@"
  • To post as a guest, your comment is unpublished.
    Sam · 2 years ago
    Works great, thanks for the code!
    My only remark would be that this code cuts of file names when there is a "." in the filename itself (e.g. file.123.csv turns into file.csv).
    • To post as a guest, your comment is unpublished.
      Carol · 1 years ago
      Have you found a way around this issue?
      • To post as a guest, your comment is unpublished.
        Clara · 1 years ago
        Carol,

        On line 33 I've replaced this code:

        xStrCSVFName = xStrSPath & Left(xStrEFFile, InStr(1, xStrEFFile, ".") - 1) & ".csv"

        With this code:

        xStrCSVFName = xStrSPath & Left(xStrEFFile, InStr(1, xStrEFFile, ".xlsx") - 1) & ".csv"

        Note that if you're using some other excel extension (.xls, .xlsm, etc.) you should change it as such :)
        • To post as a guest, your comment is unpublished.
          Sonya · 1 years ago
          Thank you so much! This has saved me so much time!!
  • To post as a guest, your comment is unpublished.
    Aman · 2 years ago
    Ty it really works dear !!