Live-Forum - Die aktuellen Beiträge
Datum
Titel
17.10.2025 10:28:49
16.10.2025 17:40:39
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

erste Zeile leerzeile mit Platzhalter

Forumthread: erste Zeile leerzeile mit Platzhalter

erste Zeile leerzeile mit Platzhalter
27.01.2016 16:35:47
Erik
Hallo zusammen !
Habe folgendes Makro
Sub csv_umwandeln ()
Dim strTemp As String
Dim strDateiname As String
Dim strTrennzeichen As String
Dim wie As Integer
Dim aB As Variant   ' Bereich als ARRAY
Dim r() As Variant
Dim z As Long, s As Long ' zeile/Spalte im Array aB
' Spalte E, Spalte G, Spalte D und Splate F.
r = Array(2, 4, 1, 3)   ' Index in r geht von 0 bis 3, siehe Schleife unten
If Selection.Columns.Count  4 Or Selection(1).Column  4 Then
MsgBox "Es wurde nicht D-G selektiert"
Exit Sub
End If
'    strDateiname = ActiveWorkbook.FullName
'    strDateiname = Replace(strDateiname, ".xls", ".csv")
strDateiname = "D:\Bestellung EFA.csv"  '& Replace(ActiveWorkbook.Name, ".xls", ".csv")
strDateiname = InputBox("Datei", "Datei Wählen", strDateiname)
If strDateiname = "" Then Exit Sub
wie = vbNo
If Dir(strDateiname)  "" Then
wie = MsgBox("Daten anhängen?", vbYesNo, strDateiname & "Datei bereits vorhanden")
If wie = vbCancel Then Exit Sub
End If
strTrennzeichen = InputBox("Welches Trennzeichen soll verwendet werden?", "CSV-Export", ";") _
If strTrennzeichen = "" Then Exit Sub
aB = Selection   ' hier von 1 bis 4, also D=1 .. G=4
' bzw. wegen r: 2,4,1,3 = E,G,D,F
If wie = vbNo Then
Open strDateiname For Output As #1
Else
Open strDateiname For Append As #1
End If
For z = 1 To UBound(aB, 1)
strTemp = ""
' dann aus den Spalten D-G:
For s = 0 To 3
If InStr(1, aB(z, r(s)), strTrennzeichen) > 0 Then
strTemp = strTemp & """" & aB(z, r(s)) & """"
Else
strTemp = strTemp & CStr(aB(z, r(s)))
End If
' immer Trennzeichen, außer beim Letzten...
If s 

Es müsste noch in der fertigen csv Datei
eine Leere Zeile 1 mit Platzhalter (ein X genügt) eingefügt werden.
Kenne den Befehl aber dazu nicht.
Gruß Erik

Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: erste Zeile leerzeile mit Platzhalter
27.01.2016 16:39:29
selli
hallo erik,
ungetestet:
Sub csv_umwandeln ()
Dim strTemp As String
Dim strDateiname As String
Dim strTrennzeichen As String
Dim wie As Integer
Dim aB As Variant   ' Bereich als ARRAY
Dim r() As Variant
Dim z As Long, s As Long ' zeile/Spalte im Array aB
' Spalte E, Spalte G, Spalte D und Splate F.
r = Array(2, 4, 1, 3)   ' Index in r geht von 0 bis 3, siehe Schleife unten
If Selection.Columns.Count  4 Or Selection(1).Column  4 Then
MsgBox "Es wurde nicht D-G selektiert"
Exit Sub
End If
'    strDateiname = ActiveWorkbook.FullName
'    strDateiname = Replace(strDateiname, ".xls", ".csv")
strDateiname = "D:\Bestellung EFA.csv"  '& Replace(ActiveWorkbook.Name, ".xls", ".csv")
strDateiname = InputBox("Datei", "Datei Wählen", strDateiname)
If strDateiname = "" Then Exit Sub
wie = vbNo
If Dir(strDateiname)  "" Then
wie = MsgBox("Daten anhängen?", vbYesNo, strDateiname & "Datei bereits vorhanden")
If wie = vbCancel Then Exit Sub
End If
strTrennzeichen = InputBox("Welches Trennzeichen soll verwendet werden?", "CSV-Export", ";") _
_
If strTrennzeichen = "" Then Exit Sub
aB = Selection   ' hier von 1 bis 4, also D=1 .. G=4
' bzw. wegen r: 2,4,1,3 = E,G,D,F
If wie = vbNo Then
Open strDateiname For Output As #1
Else
Open strDateiname For Append As #1
End If
Print #1, "x"
For z = 1 To UBound(aB, 1)
strTemp = ""
' dann aus den Spalten D-G:
For s = 0 To 3
If InStr(1, aB(z, r(s)), strTrennzeichen) > 0 Then
strTemp = strTemp & """" & aB(z, r(s)) & """"
Else
strTemp = strTemp & CStr(aB(z, r(s)))
End If
' immer Trennzeichen, außer beim Letzten...
If s 

gruß
selli

Anzeige
AW: erste Zeile leerzeile mit Platzhalter
28.01.2016 09:31:57
Erik
Danke Selli,
das wars !
Gruß
Erik
;

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