Excel VBA relativer Pfad

Hallo Leute,

ich habe folgende Frage.

Ich schreibe gerade ein Info Excel sheet. Wie auch immer es soll per Button Druck ein PDF datei geöffnet werden.

Das habe ich auch schon geschaft jedoch nur mit einem festen Pfad vergabe.

Zur Ordner Strucktur

Pfad des Excel sheet
/Projekt/Auswertung/Info.exel

Pfad der PDF sheet
/Projekt/Recherche/Quelle.pdf

Der Ordner Projekt wird immer im ganzen verschoben.

Wie muss ich das ganze Programieren das ich die PDF öffnen kann.

Danke für die Hilfe!!!

Grezz

hier schaue mal ob du damit Klar kommst:

Function einsHoeher(pfadstring As String)

'Eine Ebene höher:
Do
pfadstring = Left(pfadstring, Len(pfadstring) - 1) Loop While Right(pfadstring, 1) „“
pfadstring = Left(pfadstring, Len(pfadstring) - 1) ’ „“ muss noch weg

MsgBox pfadstring

End Function

Sub test()
Dim mypfad As String
Dim neuerpfad As String

mypfad = ThisWorkbook.Path
neuerpfad = einsHoeher(mypfad)

End Sub

Gruß
Hundertwasser

hier schaue mal ob du damit Klar kommst:

Hallo Hundertwasser,

erstmal danke für die schnelle Antwort.

Leider bin ich net mehr so fit in VBA… daher wäre ich ihnen sehr dankbar wenn sie Ihre gleichung auf die zwei Pfade bzw. auf die Dateien Anwendnen die ich angegeben habe.

Danke schon mal Vorab.

Grezz

Trickel

hmmm…
Also button „pdf“ erstellen
Wenn Button betätigt dann pdf_oeffnen()

Private Declare Function ShellExecute Lib "shell32.dll" \_
Alias "ShellExecuteA" (ByVal Fensterzugriffsnummer As Long, \_
ByVal lpOperation\_wie\_Open\_oder\_Print As String, \_
ByVal lpDateiname\_incl\_Pfad As String, \_
ByVal lpZusätzliche\_Startparameter As String, \_
ByVal lpArbeitsverzeichnis As String, \_
ByVal nGewünschte\_Fenstergröße\_der\_Anwendung As Long) \_
As Long

Sub pdf\_oeffnen()
Dim mypfad As String
Dim pfadstring As String

mypfad = ThisWorkbook.Path

Do
mypfad = Left(mypfad, Len(mypfad) - 1)
Loop While Right(mypfad, 1) "\"
mypfad = Left(mypfad, Len(mypfad) - 1)

ShellExecute 0&, "Open", mypfad & "\Recherche\Quelle.pdf", \_
vbNullString, vbNullString, SW\_SHOWNORMAL

End Sub

Hallo :wink:
hatten das damlas mal in der schule, so klappt es bei mir :wink:

UserForm1.Image1.Picture = LoadPicture(".\Blaue Berge.jpg") wichtig ist der Punkt in den anführungszeichen :wink:
Bei dir wäre das so:

LoadPicture(".\Projekt\Recherche\Quelle.pdf")

Viel Erfolg :wink:

hmmm…
Also button „pdf“ erstellen
Wenn Button betätigt dann pdf_oeffnen()

Private Declare Function ShellExecute Lib „shell32.dll“ _
Alias „ShellExecuteA“ (ByVal Fensterzugriffsnummer As Long, _
ByVal lpOperation_wie_Open_oder_Print As String, _
ByVal lpDateiname_incl_Pfad As String, _
ByVal lpZusätzliche_Startparameter As String, _
ByVal lpArbeitsverzeichnis As String, _
ByVal nGewünschte_Fenstergröße_der_Anwendung As Long) _
As Long

Sub pdf_oeffnen()
Dim mypfad As String
Dim pfadstring As String


Danke klapt wunderbar

Der Ordner Projekt wird immer im ganzen verschoben.

Wie muss ich das ganze Programieren das ich die PDF öffnen

Hi, was ist damit gemeint, dass der Ordner im ganzen verschoben wird ?

Sorry

Bin nicht EXCEL-Experte