Informationen und Beispiele zum Thema MsgBox | |
---|---|
![]() |
MsgBox-Seite mit Beispielarbeitsmappe aufrufen |
Betrifft: Dateipfad öffnen mit VBA
von: Alex
Geschrieben am: 17.09.2019 15:54:56
Hallo VBA-Gemeinde, da ich ein Absoluter VBA-Anfänger bin, bräuchte ich eure Hilfe.
Ich möchte gern über ein Makro eine Datei öffnen. Dabei ist zu beachten, dass der Dateipfad, sowie der Dateiname variabel sind. Ich habe hierfür schon etliche Foren durchsucht und bin leider nicht fündig geworden. Nun zu meinem konkreten Anliegen:
Ich möchte ein Makro umsetzen, mit dem ich, wenn ich eine Zelle selektiert habe, den Namen als Variable auslesen kann. Im nächsten Schritt möchte ich vom Pfad der Datei ein Ordner zurückspringen und dann folgenden Pfad gehen *\test\test\"ausgelesener Dateiname".pdf
Vielen Dank im Voraus.
Gruß Alex
Betrifft: AW: Dateipfad öffnen mit VBA
von: 1713507.html
Geschrieben am: 17.09.2019 16:16:45
Hallo
ganz sicher bin ich mir nicht, ob du das meinst.
- Rechtsclick auf den Tabellenblattreiter
- Code anzeigen
- Code dort reincopieren
Private Sub Worksheet_SelectionChange(ByVal Target As Range) Dim Datei As String, NeuDatei As String, Pfad As String, NeuPfad As String Dim strOff As String, Ext As String If Target <> "" Then Ext = ".pdf" strOff = "\test\test\" Pfad = ThisWorkbook.Path Datei = Target NeuPfad = Left(Pfad, InStrRev(Pfad, "\") - 1) & strOff If Dir(NeuPfad, vbDirectory) <> "" Then NeuDatei = NeuPfad & Datei & Ext If Dir(NeuDatei) <> "" Then MsgBox NeuDatei & " gefunden", vbExclamation Else MsgBox NeuDatei & " NICHT gefunden", vbCritical End If Else MsgBox "Pfad nicht gefunden", vbCritical End If End If End Sub
Betrifft: AW: Dateipfad öffnen mit VBA
von: 1713510.html
Geschrieben am: 17.09.2019 16:18:45
Hallo Alex,
ich mache das so.
Maik
Public Function f_Datei_öffnen_Dialog(sVerzeichnis As String, sFilter As String, sTitel As _ String) As String ' Änderung 001: Function f_Datei_öffnen_Dialog angelegt Dim vDateiname_Verzeichnis As String Dim vFilter As Variant vFilter = "Excel-Dateien (*.xls*)," & sFilter & "*.xls*," vDateiname_Verzeichnis = Application.GetOpenFilename(vFilter, , sTitel, MultiSelect:=False) 'vDateiname_Verzeichnis = Application.GetOpenFilename("Excel-Dateien (*.xls*),*.xls*,", _ MultiSelect:=False) If vDateiname_Verzeichnis <> "" Then f_Datei_öffnen_Dialog = vDateiname_Verzeichnis End If End Function