E-Mail mit EXCEL VBA Code direkt senden

josef24

Erfahrenes Mitglied
Hallo und guten Abend,

ich komme nochmal mit einer Frage zu VBA Code bezüglich des Versendens eine E-Mail mit einer EXCEL-Tabelle als Anhang. Ich möchte meine geänderten Daten in einer Tabelle an eine E-Mail anhängen und ohne nochmalige Prüfung direkt versenden. Mein Code bisher muss in der Outlook E-Mail immer noch den Anstoß zum senden manuell erhalten, dies soll aber automatisch erfolgen. Meinen bisherigen versuch hänge ich hier mal an. (Das manuelle versenden funktioniert einwandfrei)

Danke bis dahin und Gruß

Josef

Visual Basic:
Public Sub Änderungen_Click()

    sMailtext = "Aktueller Änderungsumfang / Raum für weitere Informationen:  "
    
    With CreateObject("Outlook.Application").CreateItem(0)
        .GetInspector
            .Subject = "Änderungen"
                .Body = sMailtext & .Body
                        .Importance = 1
                    .To = "wo-cu-kultur@t-online.de"
            .Display
        
        ' .send
        
        With .GetInspector.WordEditor.Application.Selection
             ThisWorkbook.Worksheets("Info").Range("A1").CurrentRegion.Copy
                 .Start = Len(sMailtext)
                     .End = Len(sMailtext)
                         .Paste
                End With
            End With
    End
End Sub
 
Ahja, ein typischer josef24 Code. Tabulatorn sind Zufallsgeneriert.
Achja, verschachtelte With würde ich nicht machen. Gibt nur Chaos.
GetInspector kannst du dir sparen, wenn du das Objekt nicht entgegennimmst und damit etwas macht. (Zeile 6). Den Inspector auf Zeile 15 wendest du erst nach dem senden an? Ist irgenwie sinnlos.

Zum Problem. Hast du schon mal .send ohne .display ausprobiert?
Und poste doch mal ein Screenshot, der Meldung die kommt.
 
Danke, der Code funktioniert wie man sehen kann, einzig das direkte sende müsste im Code noch ergänzt werden.
Hallo, folgendes Ergebnis erhalte ich wenn ich den Code laufen lasse:

Screenshot 2022-10-18 094111.jpg
Wenn ich ".Display" weglasse kommt folgender Fehler:

Screenshot 2022-10-18 100831.jpg
 
Das hat aber nix mit dem Send zu tun.
Wie oben erwähnt, ab Zeile 15 willst du etwas mit dem Mail machen, aber das hast du auf Zeile 13 versendet. Somit ist es weg.

Nachtrag: Klick bei der Meldung mal auf Debuggen und schu in welcher Zeile der Fehler ist.
 
Zuletzt bearbeitet:
Möchte noch eine Ergänzung loswerden. Habe jetzt die Zeilen 11 und 19 auskommentiert und den Sendebefehl hinter der Zeile 20 eingefügt. Die E-Mail wird jetzt zu Eingangspostfach direkt gesendet, allerdings nimmt sie den Tabelleninhalt nicht mit. Mit der PF8 Taste läuft der Code ohne Fehler durch, allerdingd ohne Tabelleninhalt wie bereits erwähnt.
Gruß Josef
 

Neue Beiträge

Zurück