Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Semikolon hinter jeder Datenzeile

Forumthread: Semikolon hinter jeder Datenzeile

Semikolon hinter jeder Datenzeile
Sascha
Hallo,
ich benutze folgenden Code um ein Arbeitsblatt als CSV-Datei zu speichern:
Sub SaveCSV()
Dim Bereich         As Object
Dim Zeile           As Object
Dim Zelle           As Object
Dim strTemp         As String
Const Pfad          As String = "S:\Vertrieb\Pulver\Kalkulation\Import\"
Const Dateiname     As String = "Ausgabe"
Const Extension     As String = ".CSV"
Const Trennzeichen  As String = ";"
Const Kapselzeichen As String = """"
'Hier kann auch ein eigener Range angegeben werden
'Set Bereich = ActiveSheet.Range("A1:B5")
Set Bereich = ActiveSheet.UsedRange
Open Pfad & Dateiname & Extension For Output As #1
For Each Zeile In Bereich.Rows
For Each Zelle In Zeile.Cells
If InStr(1, Zelle.Text, Trennzeichen) > 0 Then   '
'Zellen, die ein Trennzeichen beinhalten in Kapselzeichen setzen
strTemp = strTemp & Kapselzeichen & CStr(Zelle.Text) & _
Kapselzeichen & Trennzeichen
Else
strTemp = strTemp & CStr(Zelle.Text) & Trennzeichen
End If
Next
strTemp = Left(strTemp, Len(strTemp) - 1)    '
Print #1, strTemp
strTemp = ""
Next
Close #1
Set Bereich = Nothing
End Sub
Leider müsste in jeder Datenzeile am Ende noch ein Semikolon stehen.
Hat jemand eine Idee wie man das lösen kann?
Liebe Grüße
Sascha
Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Semikolon hinter jeder Datenzeile
28.06.2012 10:17:02
Oberschlumpf
Hi Sascha
Lösch mal diese Zeile in deinem Code:
strTemp = Left(strTemp, Len(strTemp) - 1)
Hilfts?
Ciao
Thorsten
AW: Semikolon hinter jeder Datenzeile
28.06.2012 10:29:26
Sascha
Hallo Thorsten,
es funktioniert. Vielen lieben Dank.
Gruß
Sascha
Anzeige
;
Anzeige
Anzeige

Infobox / Tutorial

Semikolon hinter jeder Datenzeile in Excel einfügen


Schritt-für-Schritt-Anleitung

Um in Excel ein Semikolon hinter jeder Datenzeile einzufügen, kannst du den folgenden VBA-Code verwenden. Dieser Code speichert ein Arbeitsblatt als CSV-Datei und fügt am Ende jeder Zeile ein Semikolon hinzu.

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu starten.
  2. Wähle im Projekt-Explorer dein Arbeitsblatt aus und füge ein neues Modul hinzu.
  3. Kopiere den folgenden Code in das Modul:
Sub SaveCSV()
    Dim Bereich         As Object
    Dim Zeile           As Object
    Dim Zelle           As Object
    Dim strTemp         As String
    Const Pfad          As String = "S:\Vertrieb\Pulver\Kalkulation\Import\"
    Const Dateiname     As String = "Ausgabe"
    Const Extension     As String = ".CSV"
    Const Trennzeichen  As String = ";"
    Const Kapselzeichen As String = """"

    Set Bereich = ActiveSheet.UsedRange
    Open Pfad & Dateiname & Extension For Output As #1
    For Each Zeile In Bereich.Rows
        For Each Zelle In Zeile.Cells
            If InStr(1, Zelle.Text, Trennzeichen) > 0 Then
                strTemp = strTemp & Kapselzeichen & CStr(Zelle.Text) & Kapselzeichen & Trennzeichen
            Else
                strTemp = strTemp & CStr(Zelle.Text) & Trennzeichen
            End If
        Next
        strTemp = strTemp & Trennzeichen ' Hier wird das Semikolon hinzugefügt
        Print #1, strTemp
        strTemp = ""
    Next
    Close #1
    Set Bereich = Nothing
End Sub
  1. Passe den Pfad und den Dateinamen nach deinen Wünschen an.
  2. Führe das Makro aus, um die CSV-Datei mit einem Semikolon am Ende jeder Zeile zu speichern.

Häufige Fehler und Lösungen

  • Fehler beim Speichern: Stelle sicher, dass der angegebene Pfad existiert und du die entsprechenden Berechtigungen hast.
  • Kein Semikolon am Ende: Wenn du das Semikolon nicht siehst, überprüfe, ob die Zeile strTemp = strTemp & Trennzeichen korrekt hinzugefügt wurde.

Alternative Methoden

Falls du nicht mit VBA arbeiten möchtest, kannst du auch Excel-Formeln verwenden, um ein Semikolon hinzuzufügen:

  1. Füge in einer neuen Spalte die Formel =A1 & ";" ein, um das Semikolon an das Ende der Daten in Zelle A1 anzufügen.
  2. Ziehe die Formel nach unten, um sie auf andere Zellen anzuwenden.
  3. Kopiere die Ergebnisse und füge sie als Werte in die ursprünglichen Zellen ein.

Praktische Beispiele

Angenommen, du hast eine Liste von Namen in Spalte A. Mit dem VBA-Code oben kannst du sicherstellen, dass jede Zeile in der CSV-Datei mit einem Semikolon endet.

Wenn du die Formel verwendest, sieht es so aus:

  • In Zelle B1: =A1 & ";" → Ergebnis in B1: Max Mustermann;

Diese Methode ist besonders nützlich, wenn du keine Programmierkenntnisse hast und schnell eine einfache Lösung benötigst.


Tipps für Profis

  • Wenn du regelmäßig CSV-Dateien erstellst, speichere dein Makro in der persönlichen Arbeitsmappe, damit du es in jedem Excel-Dokument verwenden kannst.
  • Nutze Debug.Print innerhalb deines Codes, um den Inhalt von strTemp während der Ausführung zu überprüfen. So kannst du sehen, wie deine Daten verarbeitet werden.

FAQ: Häufige Fragen

1. Wann benutze ich ein Semikolon in Excel? Ein Semikolon wird häufig als Trennzeichen in CSV-Dateien verwendet, insbesondere in europäischen Ländern, wo das Komma als Dezimaltrennzeichen dient.

2. Was ist strTemp im Code? strTemp ist eine Variable, die verwendet wird, um den aktuellen Inhalt der Zeile zu speichern, bevor sie in die CSV-Datei geschrieben wird.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige