Home  >  Praxis & Hilfe  >  Kummerkasten  >  Office  > Artikel 59568

spacer

Excel 2010: CSV-Export mit Anführungszeichen

Problem: Ich exportiere aus Excel 2010 eine Liste ins CSV-Format. Das Zielsystem, auf dem die Liste wieder importiert werden muss, kommt mit dem von Excel erstellten CSV-Format nicht zurecht. Es fehlen die Anführungs- und Schlusszeichen als Feldbegrenzungen (z.B. "Feld"). Gibt es einen Weg, die Daten auf diese Weise aus Excel in eine CSV-Datei zu kriegen?

blue_quad von Gaby Salvisberg (03.01.2012)

Lösung: Mit dem gewöhnlichen Export-Assistenten bzw. «Speichern unter» in Excel geht das nicht. Sie bekommen es aber mit einem Makro hin.

So könnte Ihre Beispiel-Liste in Excel aussehen:

Beispiel-Liste in ExcelvergrößenBeispiel-Liste in Excel

Was Excel beim CSV-Export normalerweise damit anstellt, ist dies - ohne die Anführungs- und Schlusszeichen, wie Sie richtig feststellen :

Liste nach dem normalen CSV-ExportvergrößenListe nach dem normalen CSV-Export

Bevor Sie loslegen, noch ein Tipp: Durchsuchen Sie Ihre Tabelle zuerst nach dem Anführungszeichen ("). Dieses wird später in der CSV-Datei als Feldtrenner eingesetzt. Wenn innerhalb einer Zelle schon jetzt ein solches Zeichen vorkäme (z.B. bei Zoll-Angaben wie «2,5"»), könnte das später beim Import zu Verwirrungen führen. Ersetzen Sie das Zeichen allenfalls durch Text oder eine Zeichenfolge, die Sie nach erfolgtem Export wieder zurück-ersetzen.

Das Makro: Drücken Sie Alt+ F11 zum Öffnen des Visual-Basic-Editors oder gehen Sie im Reiter Entwicklertools zu Visual Basic. Falls die Entwicklertools nicht zu sehen sind, blenden Sie sie ein: In Excel 2010 gehts zu Datei/Optionen/Menüband anpassen, dann haken Sie rechts die «Entwicklertools» an. In Excel 2007: Office-Button oben links, Excel-Optionen, dann bei Häufig verwendet diese Option ankreuzen: «Entwicklerregisterkarte in der Multifunktionsleiste anzeigen».

Doppelklicken Sie im Visual-Basic-Editor auf Diese Arbeitsmappe und fügen Sie exakt folgenden Makrocode ein, den Sie auch von hier kopieren können:

Sub CSVFile()
Dim SrcRg As Range
Dim CurrRow As Range
Dim CurrCell As Range
Dim CurrTextStr As String
Dim ListSep As String
Dim FName As Variant
FName = Application.GetSaveAsFilename("", "CSV File (*.csv), *.csv")

ListSep = Application.International(xlListSeparator)
  If Selection.Cells.Count > 1 Then
    Set SrcRg = Selection
  Else
    Set SrcRg = ActiveSheet.UsedRange
  End If
Open FName For Output As #1
For Each CurrRow In SrcRg.Rows
  CurrTextStr = ìî
For Each CurrCell In CurrRow.Cells
  CurrTextStr = CurrTextStr & """" & CurrCell.Value & """" & ListSep
Next
While Right(CurrTextStr, 1) = ListSep
  CurrTextStr = Left(CurrTextStr, Len(CurrTextStr) - 1)
Wend
Print #1, CurrTextStr
Next
Close #1
End Sub

Sicherheitshalber hier noch einmal den Makrocode als Screenshot, falls unser Websystem im oben kopierbaren Makrocode Fehler einbaut:

Der Makrocode im ScreenshotvergrößenDer Makrocode im Screenshot


Gehen Sie zu Datei/Schliessen und zurück zu Excel. Drücken Sie Alt+ F8 oder gehen Sie via Entwicklertools zu Makros. Jetzt noch auf das «CSVFile»-Makro und auf Ausführen klicken. Excel zeigt einen «Speichern unter»-Dialog an, in dem Sie einen Dateinamen (z.B. «MeineListe.csv») eingeben und einen Speicherort wählen. Die so erstellte CSV-Datei enthält als Feldbegrenzer jetzt die Anführungszeichen.

Die CSV-Liste mit Anführungs- und SchlusszeichenvergrößenDie CSV-Liste mit Anführungs- und Schlusszeichen

Wichtig: Wenn Sie Ihre ursprüngliche Excel-Datei schliessen, müssen Sie sich entscheiden, ob Sie das Makro in dieser Excel-Datei behalten wollen oder nicht. Falls es in der Datei bleiben soll, müssen Sie sie unter dem Dateityp .xlsm statt .xlsx speichern. (PCtipp-Forum)



  


Anzeige
Social Bookmarks
Wählen Sie:
Ähnliche Themen

Problem: Ich habe eine Arbeitsmappe mit mehreren Tabellenblättern. Nun möchte ich gerne gleich in mehreren Tabellen gleichzeitig mehrere Spalten löschen... Excel: Bearbeiten mehrerer Tabellenblätter

Problem: Textfelder und Bilder lassen sich in meinem Word nur innerhalb einer Rasterung positionieren. Wo kann man diese ausschalten, sodass ich sie ganz... Word: Textfeld oder Grafik genau positionieren

Problem: Ich möchte die Auswahl von Dropdown-Listen-Elementen in Excel beschränken. Konkret: Jedes Dropdown-Element darf höchstens zwölfmal ausgewählt... Excel: Beschränkung in Dropdown-Menü, wenn ausgebucht

Problem: Ich möchte in Word ein Formular mit Textfeldern erstellen. Dabei will ich die maximale Anzahl Zeichen pro Feld genau bestimmen. Weiss jemand,... Word: Länge eines Formularfelds festlegen

Problem: Ich möchte für unsere Vereinsmitglieder eine Excel-Liste mit Terminen fürs nächste Jahr erstellen, die sie dann gleich in Outlook importieren... Excel: Kalendereinträge für Outlook generieren

Fachchinesisch

Mühe mit Computerbegriffen?

Im Fachchinesen finden Sie 743 Erklärungen.

AKTUELLE KUMMERKASTEN

Problem: Ich habe in Excel 2010 eine Adressliste, die ich in Outlook 2010 importieren möchte. Auf dem Tabellenblatt habe ich in der ersten Zeile Spaltenüberschriften... Outlook-Kontakte aus Excel importieren

Problem: Irgendwie sollte man in Google-Mail übers Webinterface doch ausgezeichnet suchen können. Aber wenn ich einen Suchbegriff ins Feld oberhalb der... Suchen in Google Mail

Leser empfehlen

Problem: Ich möchte in den einzelnen Feldern der Tabelle eine Dropdown-Liste zur Auswahl der Kriterien einfügen. Wie geht das? Dropdown-Liste in Excel erstellen

Ich arbeite häufig mit der Sonderzeichentabelle in Word. Mir ist es aber zu umständlich, ständig die Tabelle zu öffnen, um das Zeichen in den Text einzufügen.... ASCII-Tabelle für Sonderzeichen

Kann ich Windows XP auch im abgesicherten Modus starten? Windows XP im abgesicherten Modus starten

Problem: Wenn ich aus den PCtipp-Downloads ein File herunterladen will, erscheint die Aufforderung, ein PCtipp-Abo zu lösen. Ich kaufe den PCtipp aber... Frustfreier Download bei www.pctipp.ch

Problem: Wenn ich im Firefox via Ctrl+T oder «Datei/Neuer Tab» einen neuen Tab öffne, wird in diesem immer eine leere Seite (about:blank) angezeigt. Ich... Firefox: Neuer Tab mit Startseite?

ANZEIGE
PROMOTION
PCTIPP ABONNIEREN
Holen Sie sich monatlich die besten Tipps und Tricks für den PC-Alltag nach Hause.
NEWSLETTER
Wir halten Sie auf dem Laufenden: Der Newsletter liefert Ihnen jeden Werktag das Aktuellste aus der Welt von Computer und Internet.

RSS-FEEDS
Die PCtipp-Website bietet RSS-Feeds an. Holen Sie sich die Schlagzeilen von PCtipp.ch schnell und bequem auf den Desktop oder bauen Sie diese in Ihre eigene Webseite ein.
Anzeige