Leider habe ich folgendes Problem in einer Arbeitsmappe. Durch Klicken eines Buttons wird die Excel zuerst gespeichert und dann ein PDF erstellt, welches an eine Email angehängt wird. Bevor unsere Firmen PCs auf OneDrive umgestellt wurden, wurde durch den Befehl "kill pdf" die PDF anschließend gelöscht. Mittlerweile kommt ein "Laufzeitfehler 53 - Datei nicht gefunden" und die erstellte pdf ist auch auf dem Desktop zu finden.
Wichtiger Hinweis: der Code soll für beide User "nicht-OneDrive" und "OneDrive" funktionieren. Kann wer helfen? Hier der aktuelle Code:
Sub Save_and_Send()
Dim c As Comment
For Each c In ActiveSheet.Comments
c.Visible = False
Next
ActiveWorkbook.Save 'letzten Stand speichern
Dim pdf As String
pdf = pdf_erstellen
Call permail(pdf)
Kill (pdf) 'pdf wieder löschen
End Sub
Function pdf_erstellen()
Dim pdf As String
Dim sep As String
sep = Application.PathSeparator
pdf = ThisWorkbook.Path & sep & ActiveSheet.Range("E3").Value & ActiveSheet.Range("J3").Value & ".pdf"
'ThisWorkbook.Path & sep & ThisWorkbook.name & ".pdf" 'Speicherpfad
If Sheets("Tabelle3").Visible = xlSheetVisible Then
Sheets(Array("Tabelle1", "Tabelle2", "Tabelle3")).Select
Else
Sheets(Array("Tabelle1", "Tabelle2")).Select
End If
On Error Resume Next
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=pdf, _
Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False
On Error GoTo 0
pdf_erstellen = pdf
Sheets("Tabelle1").Select 'Gruppierung aufheben
End Function