Thema Datum  Von Nutzer Rating
Antwort
Rot Per Button Datei als CSV mit Komma und Anführungszeichen
14.06.2016 09:55:19 Stoepsel
NotSolved
14.06.2016 09:57:05 Stoepsel
NotSolved

Ansicht des Beitrags:
Von:
Stoepsel
Datum:
14.06.2016 09:55:19
Views:
1350
Rating: Antwort:
  Ja
Thema:
Per Button Datei als CSV mit Komma und Anführungszeichen

Hallo,

ich versuche mich gerade an einem Button mit dem ich die aktuelle Mappe als CSV-Datei speichere. Die Werte sollen in Anführungszeichen stehen und mit einem Komma getrennt werden. Habe bisher das im Netz gefunden:

Funktioniert auch, hätte aber gerne das ohne die Menüs, da ich nur eine Formatierung brauche. Habe da ein bisschen rumprobiert (bin VBA-Anfänger), hat aber nicht funktioniert.

Dim Bereich As Object, Zeile As Object, Zelle As Object
Dim strTemp As String
Dim strDateiname As String
Dim strTrennzeichen As String
Dim strMappenpfad As String
Dim blnAnfuehrungszeichen As Boolean
Dim lngMaxSpalte As Long
 
strMappenpfad = ActiveWorkbook.FullName
 
strDateiname = InputBox("Bitte den Namen der CSV-Datei angeben.", "CSV-Export", strMappenpfad)
If strDateiname = "" Then Exit Sub
 
strTrennzeichen = InputBox("Welches Trennzeichen soll verwendet werden?", "CSV-Export", ",")
If strTrennzeichen = "" Then Exit Sub
 
If MsgBox("Sollen die Werte in Anführungszeichen exportiert werden?", vbQuestion + vbYesNo, "CSV-Export") = vbYes Then
    blnAnfuehrungszeichen = True
Else
    blnAnfuehrungszeichen = False
End If
 
Set Bereich = ActiveSheet.UsedRange
 
Open strDateiname For Output As #1
 
For Each Zeile In Bereich.Rows
    ' Hier wird die letzte ausgefüllte Spalte der aktuellen Zeile ermittelt
    lngMaxSpalte = Bereich.Cells(Zeile.Row, Columns.Count).End(xlToLeft).Column
    For Each Zelle In Zeile.Cells
    ' Ist die aktuelle Zellennummer kleiner / gleich die letzte ausgefüllte Zelle?
    ' Wenn ja, dann in csv-Datei schreiben
        If Zelle.Column <= lngMaxSpalte Then
            If blnAnfuehrungszeichen = True Then
                strTemp = strTemp & """" & CStr(Zelle.Text) & """" & strTrennzeichen
            Else
                strTemp = strTemp & CStr(Zelle.Text) & strTrennzeichen
            End If
        End If
    Next
    If Right(strTemp, 1) = strTrennzeichen Then strTemp = Left(strTemp, Len(strTemp) - 1)
    Print #1, strTemp
    strTemp = ""
Next
 
  Close #1
  Set Bereich = Nothing
  MsgBox "Export erfolgreich. Datei wurde exportiert nach" & vbCrLf & strDateiname
 
End Sub

Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:

 
 

  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
Rot Per Button Datei als CSV mit Komma und Anführungszeichen
14.06.2016 09:55:19 Stoepsel
NotSolved
14.06.2016 09:57:05 Stoepsel
NotSolved