Přejít k hlavnímu obsahu

Jak uložit data listu jako soubor CSV s / bez uvozovek?

Když exportujete nebo uložíte rozsah dat z aplikace Excel do souboru CSV, data CSV se obvykle nenacházejí v uvozovkách, ale pokud jsou hodnoty buněk odděleny čárkou nebo zalomením řádku, exportovaná data CSV budou v okolí s dvojitými uvozovkami citáty. A v tomto článku budu hovořit o tom, jak ukládat data listu jako soubor CSV s dvojitými uvozovkami nebo bez nich, jak potřebujete.

Uložte data listu jako soubor CSV s uvozovkami

Uložte data listu jako soubor CSV bez uvozovek


šipka modrá pravá bublina Uložte data listu jako soubor CSV s uvozovkami

Chcete-li uložit normální data jako soubor CSV s uvozovkami, může vám pomoci následující kód VBA, postupujte takto:

1. Podržte ALT + F11 klávesy pro otevření Microsoft Visual Basic pro aplikace okno.

2, klikněte Vložit > Modula vložte následující kód do Modul Okno.

Kód VBA: Uložte data listu jako soubor CSV s uvozovkami:

Sub CSVFile()
'updateby Extendoffice
    Dim xRg As Range
    Dim xRow As Range
    Dim xCell As Range
    Dim xStr As String
    Dim xSep As String
    Dim xTxt As String
    Dim xName As Variant
    On Error Resume Next
    If ActiveWindow.RangeSelection.Count > 1 Then
      xTxt = ActiveWindow.RangeSelection.AddressLocal
    Else
      xTxt = ActiveSheet.UsedRange.AddressLocal
    End If
    Set xRg = Application.InputBox("Please select the data range:", "Kutools for Excel", xTxt, , , , , 8)
    If xRg Is Nothing Then Exit Sub
    xName = Application.GetSaveAsFilename("", "CSV File (*.csv), *.csv")
    xSep = Application.International(xlListSeparator)
    Open xName For Output As #1
    For Each xRow In xRg.Rows
        xStr = ""
        For Each xCell In xRow.Cells
            xStr = xStr & """" & xCell.Value & """" & xSep
        Next
        While Right(xStr, 1) = xSep
            xStr = Left(xStr, Len(xStr) - 1)
        Wend
        Print #1, xStr
    Next
    Close #1
    If Err = 0 Then MsgBox "The file has saved to: " & xName, vbInformation, "Kutools for Excel"
End Sub

3. A pak stiskněte F5 klíč ke spuštění tohoto kódu a zobrazí se výzva k připomenutí, abyste vybrali rozsah dat, který chcete uložit jako soubor CSV s uvozovkami, viz screenshot:

doc save csv s uvozovkami 1

4. Pak klikněte na tlačítko OK tlačítko a a Uložit jako Zobrazí se okno, zadejte název a umístění souboru a klikněte na Uložit tlačítko, viz screenshot:

doc save csv s uvozovkami 2

5. A a Kutools pro ExcelZobrazí se okno s výzvou, které vám připomene, že nový soubor CSV byl uložen do zadaného umístění, viz screenshot:

doc save csv s uvozovkami 3

6, klikněte OK zavřete dialogové okno a nyní, když otevřete nový soubor CSV, jsou všechna data obklopena uvozovkami, jak ukazuje následující snímek obrazovky:

doc save csv s uvozovkami 4


šipka modrá pravá bublina Uložte data listu jako soubor CSV bez uvozovek

Pokud jsou vaše data oddělena čárkou, zalomením řádku v buňce, při uložení dat jako souboru CSV budou data obklopena uvozovkami, jak je znázorněno níže:

doc save csv s uvozovkami 5

Chcete-li uložit data jako soubor CSV bez uvozovek, použijte následující kód VBA.

1. Podržte ALT + F11 klávesy pro otevření Microsoft Visual Basic pro aplikace okno.

2, klikněte Vložit > Modula vložte následující kód do Modul Okno.

Kód VBA: Uložte data listu jako soubor CSV bez uvozovek:

Sub Export()
'updateby Extendoffice
    Dim xRg As Range
    Dim xRow As Range
    Dim xCell As Range
    Dim xStr As String
    Dim xTxt As String
    Dim xName As Variant
    On Error Resume Next
    If ActiveWindow.RangeSelection.Count > 1 Then
      xTxt = ActiveWindow.RangeSelection.AddressLocal
    Else
      xTxt = ActiveSheet.UsedRange.AddressLocal
    End If
    Set xRg = Application.InputBox("Please select data range:", "Kutools for Excel", xTxt, , , , , 8)
    If xRg Is Nothing Then Exit Sub
    xName = Application.GetSaveAsFilename("", "CSV File (*.csv), *.csv")
    Open xName For Output As #1
    For Each xRow In xRg.Rows
        xStr = ""
        For Each xCell In xRow.Cells
            xStr = xStr & xCell.Value & Chr(9)
        Next
        While Right(xStr, 1) = Chr(9)
            xStr = Left(xStr, Len(xStr) - 1)
        Wend
        Print #1, xStr
    Next
    Close #1
    If Err = 0 Then MsgBox "The file has saved to: " & xName, vbInformation, "Kutools for Excel"
End Sub

3. Pak stiskněte tlačítko F5 klíč ke spuštění tohoto kódu a zobrazí se okno s výzvou, které vám připomene výběr rozsahu dat, který chcete uložit jako csv bez uvozovek, viz screenshot:

doc save csv s uvozovkami 6

4, klikněte OK tlačítko a a Uložit jako Zobrazí se okno, zadejte název souboru a umístění nového souboru CSV, viz screenshot:

doc save csv s uvozovkami 7

5. A pak klikněte na tlačítko Uložit tlačítko, a Kutools pro ExcelZobrazí se okno s výzvou, které vám řekne, že nový soubor CSV byl uložen do zadaného umístění, viz screenshot:

doc save csv s uvozovkami 8

6. klikněte OK zavřete dialogové okno a při otevření nového souboru CSV se dvojité uvozovky obklopené daty odstraní, jak ukazuje následující snímek obrazovky:

doc save csv s uvozovkami 9

Nejlepší nástroje pro produktivitu v kanceláři

🤖 Kutools AI asistent: Revoluční analýza dat založená na: Inteligentní provedení   |  Generovat kód  |  Vytvořte vlastní vzorce  |  Analyzujte data a generujte grafy  |  Vyvolejte funkce Kutools...
Populární funkce: Najít, zvýraznit nebo identifikovat duplikáty   |  Odstranit prázdné řádky   |  Kombinujte sloupce nebo buňky bez ztráty dat   |   Kolo bez vzorce ...
Super vyhledávání: Více kritérií VLookup    VLookup s více hodnotami  |   VLookup na více listech   |   Fuzzy vyhledávání ....
Pokročilý rozevírací seznam: Rychle vytvořte rozevírací seznam   |  Závislý rozbalovací seznam   |  Vícenásobný výběr rozevíracího seznamu ....
Správce sloupců: Přidejte konkrétní počet sloupců  |  Přesunout sloupce  |  Přepnout stav viditelnosti skrytých sloupců  |  Porovnejte rozsahy a sloupce ...
Doporučené funkce: Zaměření mřížky   |  Návrhové zobrazení   |   Velký Formula Bar    Správce sešitů a listů   |  Knihovna zdrojů (Automatický text)   |  Výběr data   |  Zkombinujte pracovní listy   |  Šifrovat/dešifrovat buňky    Odesílat e-maily podle seznamu   |  Super filtr   |   Speciální filtr (filtr tučné/kurzíva/přeškrtnuté...) ...
Top 15 sad nástrojů12 Text Tools (doplnit text, Odebrat znaky, ...)   |   50+ Graf Typ nemovitosti (Ganttův diagram, ...)   |   40+ Praktické Vzorce (Vypočítejte věk na základě narozenin, ...)   |   19 Vložení Tools (Vložte QR kód, Vložit obrázek z cesty, ...)   |   12 Konverze Tools (Čísla na slova, Přepočet měny, ...)   |   7 Sloučit a rozdělit Tools (Pokročilé kombinování řádků, Rozdělit buňky, ...)   |   ... a více

Rozšiřte své dovednosti Excel pomocí Kutools pro Excel a zažijte efektivitu jako nikdy předtím. Kutools for Excel nabízí více než 300 pokročilých funkcí pro zvýšení produktivity a úsporu času.  Kliknutím sem získáte funkci, kterou nejvíce potřebujete...

Popis


Office Tab přináší do Office rozhraní s kartami a usnadňuje vám práci

  • Povolte úpravy a čtení na kartách ve Wordu, Excelu, PowerPointu, Publisher, Access, Visio a Project.
  • Otevřete a vytvořte více dokumentů na nových kartách ve stejném okně, nikoli v nových oknech.
  • Zvyšuje vaši produktivitu o 50%a snižuje stovky kliknutí myší každý den!
Comments (7)
Rated 5 out of 5 · 1 ratings
This comment was minimized by the moderator on the site
Super simple and straight forward! Saved the day for me. Much appreciated.
Rated 5 out of 5
This comment was minimized by the moderator on the site
Caso deseje apenas salva todo o Excel em csv *sem aspas* conforme eu, segue sugestão:

Sub Exportar_CSV()

Application.ScreenUpdating = False

'Seleciona a guia Extract do Excel depois a célula A1
Sheets("Extract").Select
Range("A1").Select

'Iniciar exportação txt via Print com texto exato mostrado em tela sem erro das aspas

Dim Path As String
Dim FileNumber As Integer
Dim LR As Integer
Dim LC As Integer

Dim k As Integer
Dim i As Integer

LR = Worksheets("Extract").Cells(Rows.Count, 1).End(xlUp).Row
LC = Worksheets("Extract").Cells(1, Columns.Count).End(xlToLeft).Column

Path = ThisWorkbook.Path & "\Extract " & Format(Now(), "ddmmyyyy-hhmmss") & ".csv"
FileNumber = FreeFile

Open Path For Output As FileNumber

For k = 1 To LR

For i = 1 To LC

If i <> LC Then
Print #FileNumber, Cells(k, i),
Else
Print #FileNumber, Cells(k, i)
End If

Next i

Next k

Close FileNumber


' Caso deseja abrir o notepad imediatamente para conferir o txt gerado só retirar a linha comentada abaixo:


'Shell "notepad.exe " & Path, vbNormalFocus



Application.ScreenUpdating = True

MsgBox "Extract*.txt salvo na pasta onde abriu este Excel!"

End Sub
This comment was minimized by the moderator on the site
Sub Exportar_TXT()



Application.ScreenUpdating = False



'Seleciona a guia Extract do Excel depois a célula A1
Sheets("Extract").Select
Range("A1").Select

'Iniciar exportação txt via Print com texto exato mostrado em tela sem erro das aspas

Dim Path As String
Dim FileNumber As Integer
Dim LR As Integer
Dim LC As Integer

Dim k As Integer
Dim i As Integer

LR = Worksheets("Extract").Cells(Rows.Count, 1).End(xlUp).Row
LC = Worksheets("Extract").Cells(1, Columns.Count).End(xlToLeft).Column

Path = ThisWorkbook.Path & "\Extract " & Format(Now(), "ddmmyyyy-hhmmss") & ".csv"
FileNumber = FreeFile

Open Path For Output As FileNumber

For k = 1 To LR

For i = 1 To LC

If i <> LC Then
Print #FileNumber, Cells(k, i),
Else
Print #FileNumber, Cells(k, i)
End If

Next i

Next k

Close FileNumber


' Caso deseja abrir o notepad imediatamente para conferir o txt gerado só retirar a linha comentada abaixo:


'Shell "notepad.exe " & Path, vbNormalFocus



Application.ScreenUpdating = True

MsgBox "Extract*.txt salvo na pasta onde abriu este Excel!"

End Sub
This comment was minimized by the moderator on the site
Thank you so much for this. I've been trying to figure out how to put double quotes around my file for 3 days!
This comment was minimized by the moderator on the site
not unicode
This comment was minimized by the moderator on the site
Sério eu te amo rsrsrsr
Me ajudou demais, muito obrigada!
This comment was minimized by the moderator on the site
Olá!
Muito obrigado! O conteúdo me ajudou muito. Precisava gerar um arquivo txt eliminando as aspas duplas no início e no final de cada linha e não estava conseguindo resolver. Agora consegui.
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations