Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
628to632
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
628to632
628to632
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Pfad dynamisch in Dateinamen übertragen

Pfad dynamisch in Dateinamen übertragen
25.06.2005 22:39:57
Franz
Hallo!
Folgendes Problem: Grundsätzlich will ich einmal das Laufwerk der Windowsinstallation ermittel das muss ja nicht immer C sein und habe da folgendes Macro:

Function FTPDir()
drvPath = CurDir()
Set FSO = CreateObject("Scripting.FileSystemObject")
Set drv = FSO.GetDrive(FSO.GetDriveName(drvPath))
FTPDir = drv
End Function

Bei der Formeleingabe im Blatt =ftpdir kommt dann z.b. C: heraus jedenfalls immer das Laufwerk wo die Datei gespeichert ist.
Dann habe ich ein Macro wo sich eine Blatt in einen bestimmten Ordner speichern soll das funktioniert zwar ganz gut verzwickt wird es weil ich eigentlich das Laufwerk C dynamisch ändern soll in das LW wo Windows gerade installiert ist zb: LW F

Sub shspcsv()
Sheets("csv").Select
Dim newname As String
newname = "c:Doku-Ftp-Excel\Ziel\" & ActiveSheet.Name
ActiveSheet.Copy
ActiveWorkbook.SaveAs Filename:="c:\Doku-Ftp-Excel\Ziel\" & Range("b1").Value & Format(Now, "yymmddhhnn") & ".csv"
ActiveWorkbook.Close False
End Sub

Wäre super wenn mir jemand eine Lösung anbieten könnte.

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Pfad dynamisch in Dateinamen übertragen
25.06.2005 23:18:06
MichaV
Hallo
wenn FTPDir="L:" ist und
wenn newname = "c:\Doku-Ftp-Excel\Ziel\"
dann ist FTPDir & Right(newname, Len(newname) - 2)="L:\Doku-Ftp-Excel\Ziel\"
Gruß- Micha
AW: Pfad dynamisch in Dateinamen übertragen
26.06.2005 18:43:10
Franz
Super Danke habe schon eine Lösung habe noch ein kleines Problemchen brauche noch eine Ordnerprüfung:
If Dir("windir:\Doku-Ftp-Excel", vbDirectory) = "Doku-Ftp-Excel" Then _ MsgBox "Verzeichnis existiert bereits" Else _
MkDir "windir:\Doku-Ftp-Excel"

Sheets("csv").Select
Dim newname As String

'newname = "c:Doku-Ftp-Excel\Ziel\" & ActiveSheet.Name
newname = "windir": Doku -Ftp - Excel \ Ziel \ " & ActiveSheet.Name" funktioniert nicht
ActiveSheet.Copy
ActiveWorkbook.SaveAs Filename:=Left(Environ("WINDIR"), 1) & ":\Doku-Ftp-Excel\Ziel\" & Range("B1").Value & Format(Now, "yymmddhhnn") & ".csv", FileFormat:=xlCSVWindows
ActiveWorkbook.Close False
End Sub

Irgenwie mag Excel meine Eingaben nicht bei
If Dir("windir:\
MkDir "windir:\
newname = "windir": Doku -Ftp - Excel \
Habe es auch schon in Klammer gestellt vielleicht hättest du da noch nen Vorschlag
Anzeige
AW: Pfad dynamisch in Dateinamen übertragen
27.06.2005 10:06:55
MichaV
Hallo
was soll If Dir("windir:\ ? Laufwerksbuchstaben können von A bis Z gehen, aber nicht "Windir" heißen. Left(Environ("WINDIR"), 1) gibt diesen Laufwerksbuchstaben zurück (also in Deinem Falle L), das solltest Du überall einbauen, so wie Du es in Left(Environ("WINDIR"), 1) & ":\Doku-Ftp-Excel\Ziel\" & Range("B1").Value richtig gemacht hast.
Also wenn Du L:\bla haben willst, dann schreibe Left(Environ("WINDIR"), 1) & ":\bla"
Gruß- Micha

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige