brauch mal wieder Hilfe. Benutze seit Jahren nachstehenden Code, den ich mir habe erstellen lassen.
Dieser lief auf 4 Rechnern (zuletzt 2 mit Win7 und 2 mit WinBeta8.0) bis zur Installation Win8.1 tadellos.
Es soll eine PDF erzeugt und abgespeichert werden.
Danach soll Outlook öffnen, sofern nicht schon offen und die generierte E-Mail mit PDF-Anhang zeigen (nicht automatisch versenden).
Seit der Installation Win8.1 tritt auch allen Rechnern das gleiche Problem auf.
Die PDF wird abgespeichert und das war`s. Es folgt die MSG-Box.
Kennt jemand das Problem? Was gefällt Win8.1 nicht? Wo verändert es was?
Im Excel ist nichts verändert. Die Verweise sind wie zuvor. Häkchen für VBA-Analyse sind auch wie zuvor alle drin.
Sub eMailSenden()
Dim MyMessage As Object, sPath$, sFileName$, sPfadUndDateiname$
On Error GoTo Fehler
'* PDF-Datei auf dem Desktop mit Namen des Tabellenblattes speichern
sPath = Sheets("STRG").Range("M3").Value
sFileName = Sheets("STRG").Range("M4").Value
sPfadUndDateiname = sPath & sFileName
'* Pdf erzeugen
Sheets("Bestellung").Range("Druckbereich").ExportAsFixedFormat Type:=xlTypePDF, _
Filename:=sPfadUndDateiname, Quality:=xlQualityStandard, _
IncludeDocProperties:=False, _
IgnorePrintAreas:=True, OpenAfterPublish:=False
Set MyMessage = CreateObject("Outlook.Application").CreateItem(0)
Application.ScreenUpdating = False
With MyMessage
.To = Range("J1")
.Subject = Range("O1")
.Body = Range("Q1")
.Attachments.Add sPfadUndDateiname
.ReadReceiptRequested = True ' Lesebestätigung
.Display
End With
'Die folgende zeile ist optional, mit ihr kann die eMail sofort gesendet werden
'# SendKeys "%s", True
Set MyMessage = Nothing ' beendet die Outlooksession
GoTo ende
Fehler:
MsgBox "Die Bestellung konnte nicht verschickt werden!" & vbLf & vbLf & _
"Bitte prüfen Sie die Pfad- und Dateiangaben!", vbInformation, "Achtung!"
ende:
Application.ScreenUpdating = True
End Sub
Für Hilfe schon malbesten Dank vorab,
Gruß Thorsten