Wie erzwingen Sie Excel, alle Spalten einer CSV-Datei zu zitieren?

Excel platziert nur Anführungszeichen um bestimmte Felder, wie zwinge ich Excel, eine CSV-Datei mit Anführungszeichen um jede Spalte zu speichern?

Author: Michael Shnitzer, 2010-04-13

18 answers

Diese Seite enthält auch die Lösung, die direkt aus dem Mund des Pferdes kommt:

Http://support.microsoft.com/kb/291296/en-us

Wenn der Link abgebaut wird, lautet das zu suchende Thema:

"Verfahren zum Exportieren einer Textdatei mit Komma-und Anführungszeichen in Excel" und / oder "Q291296"

Tl;dr: Benutze ihr Makro

 45
Author: sahmeepee,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2012-03-07 10:09:56

Wenn Sie die XLS-Datei in LibreOffice oder OpenOffice öffnen, dann speichern unter....und wählen Sie Text CSV, es alows Erzeugen einer CSV-Datei, die auch Anführungszeichen als Trennzeichen enthält. Z. B.: "Smith","Pete","Kanada" "Jones","Mary","England" -

Aktivieren Sie einfach das Kontrollkästchen "Alle Textzellen zitieren" : Export in CSV mit LibreOffice

Um auch numerische Felder zu zitieren, markieren Sie Ihren Zellbereich und ändern Sie die Zellformatierung vor dem Speichern in "Text".

 45
Author: Pete,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2018-05-09 16:29:07

Powershell scheint korrekt zu dump. also so etwas wie

Suche nach Powershell.exe auf Windows-Rechner, wenn Sie Powershell nicht kennen.

import-csv C:\Temp\Myfile.csv | export-csv C:\Temp\Myfile_New.csv -NoTypeInformation -Encoding UTF8

Hoffe es hilft jemandem.

 21
Author: ATek,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2018-01-24 23:10:25

Ich fand diese einfache Lösung:

  1. Markieren Sie die Zellen, die Sie die Anführungszeichen hinzufügen möchten.
  2. Rechtsklick und gehe zu: Zellen formatieren → Registerkarte: Nummer → Kategorie: Benutzerdefiniert
  3. Fügen Sie Folgendes in das Feld Type ein: "''"@"''" (siehe Details unten)
  4. Klicken Sie auf " Ok "

Die Zeichenfolge, die Sie einfügen, ist "''"@"''", dh Doppelzitat, Einzelzitat, Einzelzitat, Doppelzitat, @ Symbol, Doppelzitat, Einzelzitat, Einzelzitat, Doppelzitat.

Bearbeitet für Excel 2010 aus den hier gefundenen Informationen .

 20
Author: Michael,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2014-08-21 21:46:16

Markieren Sie die Zellen, die Sie die Anführungszeichen hinzufügen möchten. Gehe zu Format - > Zellen - > Benutzerdefiniert Kopieren / Fügen Sie Folgendes in das Feld Typ ein: \"@\" Klicken Sie auf "OK" Sei froh, dass du nicht alles von Hand gemacht hast.

Von: http://www.lenashore.com/2012/04/how-to-add-quotes-to-your-cells-in-excel-automatically/

 5
Author: Steve Coleman,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2016-09-30 15:54:56

Dies war für mich am einfachsten: Ich habe die Tabelle in Access 2010 importiert und von dort als getrennte Textdatei exportiert. Gab mir die Anführungszeichen um meine Felder. Dauert weniger als eine Minute für 42k Zeilen jetzt, da ich die Schritte nach unten habe.

 4
Author: user326114,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2014-05-23 13:56:19

Ich habe eine andere Problemumgehung gefunden, bei der das VBA-Makro nicht enthalten ist, für die jedoch Notepad++ oder ein ähnlicher makrobasierter Texteditor erforderlich ist.

Exportieren Sie Ihre Datei als tabulatorgetrennten Text und öffnen Sie dann die exportierte Datei in Notepad++. Ersetzen Sie alle Instanzen des Tabulatorzeichens durch den Text", " (dh buchstäblich Anführungszeichen, Komma, Anführungszeichen) und verwenden Sie dann ein anderes Makro, um jeder Textzeile ein Präfix und Suffix mit einem doppelten Anführungszeichen hinzuzufügen.

Ein bisschen hackig, aber ich fand es schneller als ein VBA-Makro zum Laufen bringen.

 3
Author: Blueacid,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2014-07-09 15:12:51
  1. Markieren Sie die Zellen, die Sie die Anführungszeichen hinzufügen möchten.
  2. Rechtsklick und gehe zu: Zellen formatieren → Registerkarte: Nummer → Kategorie: Benutzerdefiniert
  3. Fügen Sie Folgendes in das Feld Typ ein: "''"@"''" (siehe Details unten)
  4. Klicken Sie auf " Ok "
  5. Öffnen Sie die .csv-Datei mit Notizblock (oder gleichwertig)
  6. Ersetzen Sie alle ' ' (wiederholte einfache Anführungszeichen) durch " (doppelte Anführungszeichen)
  7. Ersetze alle ;
  8. Speichern Sie überarbeitet .csv-Datei -
 3
Author: eric,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2019-09-17 11:59:38

Wenn Sie Notepad++ verwenden, um Anführungszeichen am Anfang jeder Zeile hinzuzufügen, öffnen Sie einfach die exportierte CSV-Datei, setzen Sie den Cursor auf die 1. Zeile, 1. Spalte und klicken Sie dann auf Menü Bearbeiten/Spalteneditor..., im Feld 'Text einfügen', geben Sie ", dann wird der Anfang jeder Zeile ein Zitat haben, dann können Sie reguläre Ausdrücke verwenden, um alle Registerkarten zu suchen/ersetzen.

 1
Author: Michael Zhang,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2016-07-23 02:51:20

Für Windows-Benutzer

  1. "Speichern unter" Excel-Datei als CSV -
  2. Gespeicherte Datei mit Mircrosoft Works Spreadsheet öffnen
  3. "Speichern unter" die Tabelle als CSV -
  4. Alle nicht numerischen Felder haben jetzt " um sie herum

Beachten Sie, dass dies nicht dasselbe Tastaturzitat ist, das eine Vorwärts-und Rückwärtsvariante aufweist.
Wenn Sie also CSV zum LADEN in die Mysql-Tabelle verwenden, schneiden Sie sie aus und fügen Sie sie in den BEIGEFÜGTEN Parameter ein, da Sie sich sonst fragen, warum Sie die Nachricht #1083 - Field separator argument is not what is expected

 0
Author: Greg,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2013-10-08 17:37:37

Ich habe den folgenden Ansatz verwendet, um drei Spalten in Excel zu verwenden und die Zeichenfolge in der vierten Spalte zu erstellen.

=CHAR(34)&A2&CHAR(34)&","&CHAR(34)&B2&CHAR(34)&","&CHAR(34)&C2&CHAR(34)&""

Mein Problem mit dem Ansatz "''"@"''" ist, dass die zweite Spalte meiner Daten eine Zahl war, bei der der Ansatz "''"@"''" nichts mit den Zahlen zu tun hatte. Manchmal ist die zweite Spalte leer, aber ich musste sicherstellen, dass sie in der endgültigen Textdatei dargestellt wurde.

 0
Author: user415149,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2015-02-03 17:03:47

Eine andere Möglichkeit, wenn Sie MS access haben (ich habe ver 2007), importieren Sie die Datei dann exportieren Sie es als Textdatei. Dann ändern Sie die .txt zu .csv. Alle Nummernfelder beachten wenn Sie also auch doppelte Anführungszeichen um die Zahlen benötigen, ändern Sie während des Zugriffs das Feld von einem Zahlenfeld in ein Textfeld.

 0
Author: Dean,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2016-02-24 18:11:30

Das Exportieren von kommagetrennten und zitierten Zeichenfolgen kann nur mit Excel 2016 und Notepad erfolgen, wobei eine Kopie der Daten, eine Formel, ein Export, eine Änderung der Dateieigenschaften, ein Ersatz in Notepad, das Speichern der exportierten Datei und die Bereinigung verwendet werden. Jeder ist ein einfacher Schritt. Im detail: -

  1. Kopieren Sie die zu exportierenden Spalten in ein neues Zwischenblatt, um das Original beizubehalten, und als Sicherung, wobei das neue Blatt später gelöscht werden muss, um die Tabelle so zu belassen, wie sie war.

  2. Setzen andernfalls nicht vorkommende Zeichen, sagen Sie '#' oder ';-)' an jedem Ende einer Zeichenfolge in der Spalte, sagen Sie ' # 'oder'; -) ' mit der Formel =concat("#",trim(A1),"#"), wobei Sie die Formel in alle Zeilen einer anderen Spalte einfügen.

    • Benachbarte Spalten können gleichzeitig ausgeführt werden, zitieren jedoch keine Zahlen, um zu vermeiden, dass sie als Zeichenfolgen eingelesen werden.
    • Der Trim vermeidet nachfolgende Leerzeichen, die ein ungeschicktes Exportverhalten auslösen können.
    • Zeichenketten sollten nicht enthalten '"', das könnte stören importieren.
  3. Kopieren Sie die neuen Spalten zurück über A..., mit der Methode '123', um die Formel nicht zu tragen.

  4. Exportieren Sie das Blatt als CSV-Datei, um die Kommas zwischen Feldern einschließlich Zahlen einzufügen.

  5. Ändern Sie die Datei.csv-Eigenschaften, damit es mit Notepad geöffnet werden kann.

  6. Verwenden Sie Notepad, um die beliebigen Zeichen durch '"' zu ersetzen.

  7. Während es sinnvoll erscheint, " als beliebiges Zeichen zu verwenden, ist es muss in eine andere Zelle gesetzt werden, sagen wir' $A$50', und dann, was beim Export erscheint, ist'"""', anscheinend ein weiterer unbequemer Auslöser.

  8. Im Editor sollte die Datei gespeichert werden und zu einem *werden.txt-Datei importiert werden und die Zwischen *.csv gelöscht.

  9. Mit Bereinigung der zusätzlichen Tabellenkalkulation Mission erfüllt.

Vielleicht können die Access Export Tools eines Tages in Excel eingebettet werden. Ein allgemeinerer Ansatz unter den Programmen, die cut verwenden und einfügen, wäre, dass die Einfügeoptionen eine Auswahl von Möglichkeiten enthalten, die Ausgabestruktur zu interpretieren und Trennzeichen bereitzustellen.

 0
Author: HGB,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2016-05-30 12:31:35

Michaels Antwort vom 21.08.2014 ist wirklich hilfreich. Ich musste jedoch ein oder zwei zusätzliche Schritte ausführen:

  1. Öffnen Sie die .csv-Datei mit Notizblock (oder gleichwertig)
  2. Ersetzen Sie alle "(wiederholte einfache Anführungszeichen) durch " (doppelte Anführungszeichen)
  3. Ersetzen Sie alle ; (wird als Trennzeichen in der deutschen Excel-Version verwendet) durch ,
  4. Speichern Sie überarbeitet .csv-Datei -
 0
Author: user,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2016-10-21 08:52:58

So verwenden Sie die OpenOffice-App, um eine Excel-Tabelle zu erstellen und eine CSV-Datei (Text) mit Anführungszeichen um jedes Textfeld zu erstellen.

Öffnen Sie die Excel-Datei mit OpenOffice und führen Sie die folgenden Schritte aus:

Datei > Speichern unter

Geben Sie einen neuen Namen für die Datei an, die Sie erstellen möchten

Für Dateityp, wählen Sie "Test-CSV (.csv)

Aktivieren Sie das Kontrollkästchen "Filtereinstellungen bearbeiten"

Klicken Sie Auf "Speichern",

Wählen Sie "Aktuelles Format beibehalten"

- Feld trennzeichen sollte ein Komma sein:,

Texttrennzeichen sollte ein Anführungszeichen: "

Aktivieren Sie das Kontrollkästchen "Alle Textzellen zitieren"

Klicken Sie auf "OK",

Das hat bei mir funktioniert!

 0
Author: Mary H,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2019-08-19 22:22:08

Ich habe mein eigenes VBA-Makro erstellt, um meine CSV in kürzester Zeit zu erstellen.

Es wird nur das Ergebnis in ein "Ausgabe" - Blatt eingefügt, das Sie erstellen müssen.
Das Ergebnis doppelte Anführungszeichen alle Spalte und fügen Sie"; " als Trennzeichen.

Wenn Sie fragen, kann ich dem Code einige Parameter hinzufügen, um Flexibilität hinzuzufügen.

Hoffe euch gefällt es!

Public Sub CreateCSV()

    Dim i, j, nc, nr As Integer
    
    nr = Range("A65000").End(xlUp).Row
    nc = Range("ZZ1").End(xlToLeft).Column
    
    With Sheets("output")
        .Cells.Clear
    
        For i = 1 To nr
        
            For j = 1 To nc
                
                    If j = 1 Then
                        .Cells(i, 1) = Chr(34) & Cells(i, j) & Chr(34) & ";"
                    ElseIf j = nc Then
                        .Cells(i, 1) = .Cells(i, 1) & Chr(34) & Cells(i, j) & Chr(34)
                    Else
                        .Cells(i, 1) = .Cells(i, 1) & Chr(34) & Cells(i, j) & Chr(34) & ";"
                    End If
                
            Next j
            
        Next i

    End With
    
End Sub
 0
Author: Maxime Léger,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2020-10-12 16:34:01

Das ist mein Rezept. Ich hasse es, das tun zu müssen, aber ich hatte keinen besseren Weg. In meinem Fall bekomme ich in keinem Feld Zitate. Ich musste auch UTF-8-Codierung verwenden und; anstelle von Tabs, also habe ich das getan.

HINWEIS: Aufgrund der Ilegibilität, doppelte Anführungszeichen in einfache Anführungszeichen usw. einzufügen, habe ich absichtlich "Tastaturformatierung" verwendet, um sowohl Tastatureingaben als auch Literalzeichen und Zeichenfolgen anzugeben.

  1. Fügen Sie eine neue Spalte vor jeder anderen in Ihrem Excel-Tabelle (klicken Sie auf den Titel der 1.Spalte, die gesamte Spalte wird ausgewählt, Rechtsklick, wählen Sie "Einfügen").
  2. Wählen Sie den gesamten Bereich leerer Zellen aus der neuen Spalte aus (diese sind standardmäßig ausgewählt). Fügen Sie im Feld Formel ein, was Sie möchten: zum Beispiel xxx. Drücken Sie STRG+geben Sie ein, um die gesamte Spalte mit demselben Wert zu füllen.
  3. Speichern Sie die Datei als Unicode-Text (*.txt).
  4. Datei in Notepad++öffnen.
  5. Drücken Sie STRG+f zum Öffnen von Suchen / Ersetzen.
  6. Gehe zur Registerkarte Ersetzen.
  7. "Search-Modus" wählen Sie "Erweitert (\n, \r, \t, \0, \x...)".
  8. Geben Sie im Feld" Suchen " xxx plus einen Tab Tastendruck ein.
  9. Geben Sie im Feld" Ersetzen"" ( ein doppeltes Zitat).
  10. Drücken Sie Alle Ersetzen.
  11. Setzen Sie im Feld" Suchen " einen Tab Tastendruck.
  12. Geben Sie im Feld "Ersetzen" Folgendes ein ";" (doppelte Anführungszeichen, Semikolon, Doppel zitieren).
  13. Drücken Sie Alle Ersetzen.
  14. Du bist fast fertig. Geben Sie für das letzte doppelte Anführungszeichen \r in das Feld "Suchen" und "\r" (Doppelzitat, Backslash, Doppelzitat) in das Feld "Ersetzen" ein. Drücken Sie Alle ersetzen.
  15. Solange Sie kein chinesisches Zeichen usw. verwenden., Sie können die Codierung in UTF-8 ändern und die Datei sicher speichern.
 -1
Author: Pere,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2014-09-16 15:50:44

Ich bin oft auf dieses Problem gestoßen. Hier ist die einfachste Lösung, die ich mir ausgedacht habe.

  1. Speichern Sie die Datei als Excel -
  2. Excel in eine Access-Tabelle importieren
  3. Exportieren Sie die Tabelle aus Access in eine Textdatei.
Mit

Access können Sie das Trennzeichen als Komma angeben und Textfelder mit Anführungszeichen versehen. Im Export-Assistenten können Sie festlegen, welche Trennzeichen oder Zeichen um Zeichenfolgen Sie wollen.

Möglicherweise müssen Sie ein Access-Abfrage, um die Felder in einer bestimmten Reihenfolge anzuordnen oder das durch Access hinzugefügte Auto-ID-Feld auszublenden.

Auch... öffnen Sie es nach dem Export in eine CSV-Datei NICHT MEHR in Excel. Wenn Sie sich die Ergebnisse ansehen möchten, öffnen Sie sie im Editor. Excel neigt dazu, sich mit den Daten einer CSV zu beschäftigen.... Ich denke, es waren Felder, die mit führenden Nullen aufgefüllt waren, wenn ich mich richtig erinnere.

 -1
Author: Gunther,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2016-04-06 18:58:41