manchmal funktioniert es
02.02.2020 13:54:47
Itryit
ich habe für die Arbeit mehrere Makros erstellt, die alle sehr ähnlich aussehen und mir und meinen Kollegen die Arbeit etwas vereinfachen sollen. Ich finde leider keine zufrieden stellende Lösung und bitte daher um Rat.
Ich habe ein VBA-Makro geschrieben, welches eine E-Mail erstellt mit gewissen Parametern. Leider funktioniert es nicht zuverlässig. Manchmal fehlen Inhalte, manchmal führt er nicht die exakte Reihenfolge aus und machmal gibt er ne Fehlermeldung aus. Aber nach mehrfachen ausführen des Makros funktioniert es irgendwann, aber ich verstehe nicht warum?
Ich habe mal ein paar Kommentare hinzugefügt, damit man nachvollziehen kann, was ich da vor habe.
Sub Test()
'Screenshot erstellen
ThisWorkbook.Worksheets("Test").Range("A1:G33").CopyPicture xlScreen, xlBitmap
' Variablen erstellen
Dim oApp As Object
Dim Signatur As Object
Set oApp = CreateObject("Outlook.Application")
Set Signatur = CreateObject("Outlook.Application")
On Error Resume Next
'E-Mail erstellen
With oApp.CreateItem(0)
Application.Wait (Now + TimeValue("0:00:01"))
.To = ThisWorkbook.Worksheets("Seite_1").Range("D45").Value
.Subject = ThisWorkbook.Worksheets("Seite_1").Range("D44").Value
.CC = ThisWorkbook.Worksheets("Seite_1").Range("D46").Value
.Body = ThisWorkbook.Worksheets("Seite_1").Range("C49").Value
.Display
SendKeys "^{END}", True '
SendKeys "~", True '
SendKeys "^v", True ' Bild einfügen
SendKeys "~", True '
.Recipients.ResolveAll
Application.Wait (Now + TimeValue("0:00:01"))
With Signatur.CreateItem(0) 'Signatur kopieren aus einer leeren E-Mail
Application.Wait (Now + TimeValue("0:00:01"))
.Display
SendKeys "{TAB}", True
SendKeys "{TAB}", True
SendKeys "{TAB}", True
SendKeys "^a", True
SendKeys "^c", True
SendKeys "%{F4}"
End With
SendKeys "^v", True
SendKeys "{PGUP}", True
SendKeys "{PGUP}", True
Application.Wait (Now + TimeValue("0:00:01"))
End With
On Error GoTo 0
Set oApp = Nothing
Set Signatur = Nothing
End Sub
Wäre nice, wenn mir jemand weiterhelfen könnte.
@Signatur. Wäre schön wenn mir jemand eine elegantere und alternative Lösung mitteilen könnte.
MfG Itryit