Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1108to1112
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

VBA Code ändern

VBA Code ändern
bustue
Hallo Leute,
wie kann man folgenden Code ändern, so daß ich im Code den Pfad fest vergebe jedoch den Dateinamen über die Abfrage eingeben kann.
Sub schreibenCSV()
f = FreeFile(0)
fname = InputBox("Bitte Pfad und Dateinamen der Zieldatei eingeben (z.B. c:\tmp\text.csv):", " _
Eingabe Pfad und Dateiname")
MsgBox "Der Name der Ausgabedatei lautet: " & fname
fseparator = InputBox("Bitte das Trennzeichen eingeben:", "Eingabe Trennzeichen")
MsgBox "Das gewählte Trennzeichen ist: " & fseparator
If fname  False Then
Open fname For Output As #f
Set Rng = ActiveCell.CurrentRegion
Debug.Print Rng.Address
FCol = Rng.Columns(1).Column
LCol = Rng.Columns(Rng.Columns.Count).Column
Frow = Rng.Rows(1).Row
Lrow = Rng.Rows(Rng.Rows.Count).Row
For I = Frow To Lrow
outputLine = ""
For j = FCol To LCol
If j  LCol Then
outputLine = outputLine & Cells(I, j) & fseparator
Else
outputLine = outputLine & Cells(I, j)
End If
Next j
Print #f, outputLine
Next I
Close #f
End If
MsgBox "Vorgang abgeschlossen!"
End Sub
Für Eure Hilfe im Voraus dankend Buste

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

Betreff
Benutzer
Anzeige
AW: VBA Code ändern
19.10.2009 20:33:49
Dirk
Hallo Buste,
meinst du so:?
Sub schreibenCSV()
f = FreeFile(0)
fname = InputBox("Bitte Dateinamen der Zieldatei eingeben" & vbNewLine & "(z.B. text.csv):", "  _
Eingabe Dateiname")
MsgBox "Der Name der Ausgabedatei lautet: " & fname
fname = "c:\tmp\" & fname 'hier wird die Variable fname neu geschrieben: fester Pfad +  _
Dateinamen aus Inputbox
fseparator = InputBox("Bitte das Trennzeichen eingeben:", "Eingabe Trennzeichen")
MsgBox "Das gewählte Trennzeichen ist: " & fseparator
If fname  False Then
Open fname For Output As #f
Set Rng = ActiveCell.CurrentRegion
Debug.Print Rng.Address
FCol = Rng.Columns(1).Column
LCol = Rng.Columns(Rng.Columns.Count).Column
Frow = Rng.Rows(1).Row
Lrow = Rng.Rows(Rng.Rows.Count).Row
For I = Frow To Lrow
outputLine = ""
For j = FCol To LCol
If j  LCol Then
outputLine = outputLine & Cells(I, j) & fseparator
Else
outputLine = outputLine & Cells(I, j)
End If
Next j
Print #f, outputLine
Next I
Close #f
End If
MsgBox "Vorgang abgeschlossen!"
End Sub

Gruß
Dirk R.
Anzeige
AW: VBA Code ändern
20.10.2009 13:51:11
BuStue
Hallo Dirk,
genauso hatte ich mir das gedacht , Leider bekomme ich nach Ablauf der Routine eine Fehlermeldung mit dem Hinweis: Open fname For Output As #f
Mit freundlichen Grüßen
Burghard

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige