ich habe leider keine Ahnung von VBA, habe aber diesen Code und bräuchte bei einer Änderung Hilfe.
Es soll zusätzlich zu den selektierten Zellen immernoch die passende Zelle aus Spalte B in die csv Datei intigriert werden und zwar so, daß die Information aus der Zelle B im Array sofort nach 1 kommt
r = Array(2, 4, 1 + (B), 3)
so gehts aber nicht (nur zur Verdeutlichung wie es später sein sollte)
Wäre sehr nett wenn mir jemand behilflich sein könnte
Gruß
Erik
Hier der Code:
Sub csv_umwandeln()
Dim strTemp As String
Dim strDateiname As String
Dim strTrennzeichen As String
Dim wie As Integer
Dim aB As Variant
Dim r() As Variant
Dim z As Long, s As Long
r = Array(2, 4, 1, 3)
If Selection.Columns.Count 4 Or Selection(1).Column 4 Then
MsgBox "Es wurde nicht D-G selektiert"
Exit Sub
End If
ChDrive Environ("homedrive")
ChDir Environ("homedrive") & Environ("homepath") & "\downloads\"
strDateiname = "Bestellung.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
If wie = vbNo Then
Open strDateiname For Output As #1
Print #1, "0000000;1;Kennzeichen;Bezeichnung"
Else
Open strDateiname For Append As #1
End If
For z = 1 To UBound(aB, 1)
strTemp = ""
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
If s