Ich habe einige VBA-Code in Excel erstellt und sendet eine automatische E-Mail über Outlook. Die eigentliche Nachricht wird jedoch erst gesendet, wenn ich Outlook manuell öffne, um das Senden/Empfangen auszulösen. Unten ist der Code, den ich verwende, um die E-Mail zu erstellen. Ich würde denken, dass alles, was ich brauche, eine Codezeile ist, um den Sende-/Empfangscode auszulösen. Ich möchte jedoch darauf hinweisen, dass sich der Ausblick während dieses Kodex nicht öffnet. Eine Möglichkeit, das Problem zu lösen, besteht darin, Outlook vor diesem Code zu öffnen und nach dem Code zu schließen.E-Mail erstellt mit VBA in Excel nicht senden
Antwort
Dies ist zu erwarten-Nachricht Einreichung ist ein asynchroner Prozess, und Outlook schließt, bevor es eine Chance hat, die Nachricht zu senden.
Machen Sie die globale OutApp-Variable so, dass sie nicht freigegeben wird, wenn Ihr Subcomputer fertig ist, und rufen Sie OutApp.Session.SendAndReceive
an.
Danke Dmitry. Ich habe ein paar Dinge ausprobiert, die sich auf das beziehen, was Sie vorgeschlagen haben, aber es schien nicht zu funktionieren. Ich muss verwirrt sein, wo ich den Code hinzufügen soll, den Sie über OutApp.Session.Send und Receive gesagt haben. Wo sollte dieser Code liegen? Und wo ist der beste Ort, um OutApp zu einer globalen Variable zu machen? Am Anfang meines Codes oder am Anfang der Funktion? Und um zu bestätigen, sollte ich es global machen, indem ich "public" statt "Dim" richtig schreibe? Danke im Voraus!!!!! – Jcarl
OutApp außerhalb Ihrer Funktion auf globaler Ebene deklarieren. Rufen Sie SendAndReceive auf, nachdem Sie Send aufgerufen haben. –
- 1. Excel Email Makro Größenbeschränkungen
- 2. E-Mail über MailEnvelope (VBA, Excel) senden
- 3. Email mit Spring Boot senden
- 4. $ http.get ('URL', {params: {email: email}}); Anfrage mit leeren params Senden
- 5. Wie senden Sie Dateien über HTTP_POST mit Excel mit VBA?
- 6. Excel-VBA-Mail von Excel-Tabelle zu senden
- 7. Senden von E-Mails mit EXCEL VBA funktioniert, Senden von E-Mails mit ACCESS VBA erhält Sicherheitsmeldungen
- 8. Senden Sie EMail mit asp.net mvc
- 9. Excel VBA - Berechnen in VBA
- 10. Excel VBA PasteSpecial mit xlPasteSpecialOperationAdd funktioniert nicht
- 11. Excel VBA Zeile löschen nicht VBA-Skript
- 12. getHTTP mit (Excel) VBA?
- 13. Email senden in Laravel zeigt Fehler
- 14. kann nicht git send-email verwenden, Quellcode und Patches senden
- 15. Excel VBA: Senden HTML E-Mail über IBM Notes
- 16. Webscraping mit VBA Excel
- 17. Excel VBA Formel mit Dynamikbereich funktioniert nicht
- 18. kann Combobox nicht mit .rowsource {vba Excel}
- 19. VBA Fehlerbehandlung funktioniert nicht in Excel
- 20. Wie erstellt man dynamische abhängige Liste in Excel VBA?
- 21. VBA Excel Codename nicht manchmal
- 22. Senden von E-Mail-Anhängen von Excel über VBA
- 23. Excel-Formel in VBA
- 24. VBA Excel Zeilenkopiermethode funktioniert nicht
- 25. Vba Excel Typ nicht übereinstimmen
- 26. Kreispackung in Excel VBA
- 27. Countif Syntax Excel-VBA nicht
- 28. VBA Programmierung in Excel
- 29. Suchfeld in Excel VBA
- 30. Statusleiste ändern funktioniert nicht in Excel/VBA
Wenn Sie Ihre Funktion aufrufen, stellen Sie sicher, dass Ihr Send-Argument auf True festgelegt ist. – Domenic
Es ist auf True festgelegt. Vielleicht muss ich einige Einstellungen oder Optionen in Outlook überprüfen? – Jcarl
Außerdem habe ich die sendreceiveall = true Codezeile hinzugefügt. Es hat den gleichen Weg gemacht, bevor ich diese Zeile hinzugefügt habe. – Jcarl