Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: VBA Email mit Bild von Bereich

VBA Email mit Bild von Bereich
06.03.2023 13:22:30
Bereich
Hallo,
ich habe ein Problem mit meinem Code zum Senden einer Mail mit Foto generiert aus Zellenbereich.
Eigentlich funktioniert der Code sehr gut.
Komisch ist, dass er einen Fehler erzeugt, wenn ich das Excel, welches den Code enthält mit VBScript öffne.
In dem Fall scheint es nötig zu sein die Mail zunächst mit .Display anzeigen zu lassen vor dem Senden.
Würde allerdings gerne den kompletten Code im Hintergrund laufen lassen und nicht, dass die Email kurz aufpoppt vor dem Senden.
Habe auch schon andere Möglichkeiten versucht wie zB. mit MailEnvelope. Gibt aber auch einen Fehler.
Vermute es liegt daran, wie das Excel mit VBScript geöffnet wird.
Weiss nicht, ob die Lösung im VBA oder VBScript liegt.
Kann mir dazu bitte jemand helfen.
Vielen Dank.
Hier der Code des VBA:

Private Sub Workbook_Open()
Application.ScreenUpdating = False
Dim r As Range
Dim outlookApp As Outlook.Application
Set outlookApp = CreateObject("Outlook.Application")
Dim outMail As Outlook.MailItem
Set outMail = outlookApp.CreateItem(olMailItem)
Dim wordDoc As Word.Document
Set wordDoc = outMail.GetInspector.WordEditor
Set r = Worksheets(1).Range("A1:B10")
r.Copy
Dim p As picture
Set p = Worksheets(1).Pictures.Paste
p.Cut
wordDoc.Range.PasteSpecial wdPasteBitmap
    With outMail
        .To = "xxx@web.de"
        .CC = ""
        .BCC = ""
        .Subject = "xxx"
        .Display 'wenn ich Code direkt in Excel laufen lassen nicht nötig; wenn via VBScript Fehlermeldung falls nicht vorhanden
        .Send
    End With
Application.ScreenUpdating = True
End Sub


Hier der Code des VBScript:

Set objExcel = CreateObject("Excel.Application") 
Dim oShell : Set oShell = CreateObject("WScript.Shell")
Set objWorkbook = objExcel.Workbooks.open("U:\xxx.xlsm")
objExcel.DisplayAlerts = False
objExcel.ActiveWorkbook.Save
objExcel.DisplayAlerts = True
objWorkbook.Saved = True
objWorkbook.Close False
objExcel.Quit
Set objExcel = Nothing
Set objWorkbook = Nothing

Anzeige

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA Email mit Bild von Bereich
06.03.2023 21:45:58
Bereich
Vergiss VBScript. Ich würde eher AutoIt nutzen. https://www.autoitscript.com/site/
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige