Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1268to1272
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

Dateipfad als Variable in VBA

Dateipfad als Variable in VBA
peter
Hallo Freunde
Da meine Versuche nicht weiterfürend sind wende ich mich an Sie.
In einer geöffneten Exceldatei starte ich ein Dialogfeld indem man eine weitere Exceldatei öffnen kann.
Diese sieht so aus.
Application.Dialogs(xlDialogOpen).Show ("Y:\Büro\Rechnungen\*.xls")
Die erste geöffnete Datei ist immer im Ordner "Büro" die weiteren die ich öffnen möchte im Ordner Rechnungen. Nun mein Problem: Leider ist der Laufwerksbuchstabe nicht immer derselbe und deshalb habe ich versucht die mit einer Variablen zu erreichen, leider ohne Erfolg.
Vielleicht könnt Ihr mir helfen.
Danke schon mal im voraus

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Dateipfad als Variable in VBA
06.07.2012 22:42:00
fcs
Hallo Peter,
wenn die 1. Datei aus Ordner "Büro" zum Zeitpunkt des Dialog-Aufrufs die aktive Daei ist, dann geht Variante "aaTest".
Ansonstten geht es auch mit Probieren wie in "bbTest". Das kann aber immer etwas dauern, je nach ANzahl der vorhandenen Laufwerke.
Gruß
Franz
Sub aaTest()
Dim strPath As String
strPath = "\Rechnungen\*.xls"
Application.Dialogs(xlDialogOpen).Show (ActiveWorkbook.Path & strPath)
End Sub
'oder mit der Versuch-und-Fehler-Methode
Sub bbTest()
Dim bolFound As Boolean, strPath As String, strLaufwerk As String, i As Integer
strPath = ":\Büro\Rechnungen\*.xls"
For i = 67 To 90 '67=C, 90=Z
strLaufwerk = Chr(i)
If Dir(strLaufwerk & strPath)  "" Then
bolFound = True
Exit For
End If
Next
If bolFound = True Then
Application.Dialogs(xlDialogOpen).Show (strLaufwerk & strPath)
Else
MsgBox "Verzeichnis """ & strPath & """ auf keinem Laufwerk gefunden", _
vbInformation + vbOKOnly, "Datei öffnen-Dialg anzeigen"
End If
End Sub

Anzeige
AW: Dateipfad als Variable in VBA
06.07.2012 22:54:21
peter
Hallo Franz
Super "aaTest" hat auf Anhieb geklappt!!!
Vielen Dank nochmal
AW: Dateipfad als Variable in VBA
06.07.2012 23:13:57
peter
Ich bitte nochmal um Hilfe
Bei diesem Script geht´s mir genauso.
Das Tabellenblatt wird in den Ordner Rechnungen abgespeichert. "sicherung" ist auch eine Variable und wieder geht es um den Laufwerksbuchstaben.
ActiveWorkbook.SaveAs ("Y:\Büro\Rechnungen\" & (sicherung))
Vielen Dank im voraus
Peter
AW: Dateipfad als Variable in VBA
06.07.2012 23:47:39
fcs
Hallo Peter,
welche Variante benutzt werden muss hängt davon ab, ob die zu sichernde aktive Datei im gleichen Verzeichnis steht wie die Sicherungskopie.
Die Variante "ddTest" gilt wenn beide Verzeichnisse identisch sind.
Hinweis: Beim Erstellen von Sicherungskopien ist ggf. die Methode "SaveCopyAs" die bessere Variante siehe "eeTest"
Gruß
Franz
Sub cctest()
Dim strLaufwerk As String, strPath As String, sicherung As String
With ActiveWorkbook
sicherung = "Copy_" & Format(Now, "YYYY-MM-DD hhmmss ") & .Name 'Test-Zeile
strLaufwerk = Left(.Path, 1)
strPath = ":\Büro\Rechnungen\"
.SaveAs Filename:=strLaufwerk & strPath & sicherung
End With
End Sub
'oder
Sub ddTest()
Dim sicherung As String
With ActiveWorkbook
sicherung = "Copy_" & Format(Now, "YYYY-MM-DD hhmmss ") & .Name 'Test-Zeile
.SaveAs Filename:=.Path & "\" & sicherung
End With
End Sub
Sub eeTest()
Dim sicherung As String
With ActiveWorkbook
sicherung = "Copy_" & Format(Now, "YYYY-MM-DD hhmmss ") & .Name 'Test-Zeile
If .Saved = False Then .Save
.SaveCopyAs Filename:=.Path & "\" & sicherung
End With
End Sub

Anzeige
AW: Dateipfad als Variable in VBA
07.07.2012 09:02:07
Peter
Hallo Franz
Vielen Dank für Deine professionelle Hilfe!!!!
Eigentlich haben alle funktioniert, in meinem Beispiel habe ich "Sub cctest" verwendet.
Nochmal großen Dank
Gruß Peter
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige