VBA .pdf über Button öffnen
#1
Hallo an alle.

Ich suche nach dem restlichen Code, womit ich die .pdf öffnen kann.

Dateipfad siehe Bildanhang!

Code:
Code:
Private Sub CommandButton2_Click()
'Schadenprotokoll anzeigen

Dim Zeile As Long
Dim str1 As String
Dim Datei As String
Dim Schadennummer As String

With ListBox1

        str1 = Me.ListBox1.List(Me.ListBox1.ListCount - 1, 4)
        str1 = Replace(str1, ".", "_")

        Schadennummer = .List(.ListIndex)

        If ListBox1.List(Me.ListBox1.ListCount - 1, 5) = "" Then
        Datei = ThisWorkbook.Path & "\Schadensmeldungen_offen\" & str1 & "_" & Schadennummer & "_" & ListBox1.List(Me.ListBox1.ListCount - 1, 1) & ".pdf"
        Else
        Datei = ThisWorkbook.Path & "\Schadensmeldungen_erledigt\" & str1 & "_" & Schadennummer & "_" & ListBox1.List(Me.ListBox1.ListCount - 1, 1) & ".pdf"
        End If
       
'Hier soll die .pdf geöffnet werden!

End With

Unload Me

End Sub


Angehängte Dateien Thumbnail(s)
   
Antworten Top
#2
DateinameMitPfadundEndung = "D:\.....\xyz.pdf"
Shell "Explorer.exe " & DateinameMitPfadundEndung
Antworten Top
#3
Da macht er nur einen Hauptordner im Explorer auf.

er soll aber die .pdf möglichst im Adobe öffnen.

Code:
Code:
Private Sub CommandButton2_Click()
'Schadenprotokoll anzeigen

Dim str1 As String

With ListBox1

    If .ListIndex <> -1 Then
   
        iSpin = .List(.ListIndex) + 1 '<-- Eintrag aus Listbox Spalte 1
       
        str1 = CStr(Sheets("Schäden").Cells(iSpin, 3).Value)
        str1 = Replace(str1, ".", "_")
       
        Schadennummer = Format(Sheets("Schäden").Cells(iSpin, 1).Value, "0000") 'CStr(Sheets("Schäden").Cells(iSpin, 1).Value)
       
        If CStr(Sheets("Schäden").Cells(iSpin, 19).Value) = "" Then
        Datei = ThisWorkbook.Path & "\Schadensmeldungen_offen\" & str1 & "_" & Schadennummer & "_" & CStr(Sheets("Schäden").Cells(iSpin, 2).Value) & ".pdf"
        Else
        Datei = ThisWorkbook.Path & "\Schadensmeldungen_erledigt\" & str1 & "_" & Schadennummer & "_" & CStr(Sheets("Schäden").Cells(iSpin, 2).Value) & ".pdf"
        End If
       
        'Hier die .pdf anzeigen
        MsgBox """" & Datei & """"
        Shell "Explorer.exe " & Datei
       
'Unload Me
       
    Else
    MsgBox "Bitte einen Schaden auswählen!", vbCritical, "Fehler"
    End If

End With

End Sub
Antworten Top
#4
" Da macht er nur einen Hauptordner im Explorer auf." ?
Dann EXISTIERT so eine Datei auch nicht !
Kopiere doch mal den Dateinamen, den der Code "errechnet" und gebe ihn im Explorer ein - Dann siehst du es auch....
Antworten Top
#5
Hallo,

Code:
'Hier soll die .pdf geöffnet werden!
  ActiveWorkbook.FollowHyperlink Datei

Gruß, Uwe
Antworten Top
#6
Bringt doch alles nichts, wenn der Pfad oder der Name nicht existiert.....
Antworten Top
#7
Der Pfad existiert schon!
Code:
        If CStr(Sheets("Schäden").Cells(iSpin, 19).Value) = "" Then
        Datei = ThisWorkbook.Path & "\Schadensmeldungen_offen\" & Year(Now()) & "\" & str1 & "_" & Schadennummer & "_" & CStr(Sheets("Schäden").Cells(iSpin, 2).Value) & ".pdf"
        Else
        Datei = ThisWorkbook.Path & "\Schadensmeldungen_erledigt\" & Year(Now()) & "\" & str1 & "_" & Schadennummer & "_" & CStr(Sheets("Schäden").Cells(iSpin, 2).Value) & ".pdf"
        End If
       
        'Hier die .pdf anzeigen
        MsgBox Datei
       
        Shell "Explorer.exe " & Datei

Shell "Explorer.exe " & Datei  da passiert nichts

Shell "Explorer.exe " & "C:\Users\Andreas\Documents\Schadensmeldungen\Schadensmeldungen_erledigt\2025\05-02-2025_0002_aaa.pdf"

da öffnet er sie.

MsgBox Datei    ist exackt der gleiche Pfad

Ich tippe aber, dass es mit den Anführungszeichen nicht hinhaut.

erledigt!

Vielen Dank an alle.

im Replace war ein Fehler
Antworten Top
#8
Statt

Code:
With ListBox1

        str1 = Me.ListBox1.List(Me.ListBox1.ListCount - 1, 4)
        str1 = Replace(str1, ".", "_")

        Schadennummer = .List(.ListIndex)

schreib


Code:
With ListBox1
  c00= replace(.list(.listcount-1,4),".","_"
  Schadennummer = .value
Zum übersetzen von Excel Formeln:

http://dolf.trieschnigg.nl/excel/index.p...gids=en+de
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste