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

Forumthread: Erstellung Email mit VBA funktioniert nicht mehr

Erstellung Email mit VBA funktioniert nicht mehr
18.04.2018 13:12:17
Valentin
Liebes Forum
Seit ich Windows 2010 auf dem Computer habe funktioniert die E-Mail Erstellung per Makro nicht mehr (normaler Start des Makro geht ohne Probleme). Es kommt die folgende Fehlermeldung:
"Objekterstellung durch ActiveX-Komponente nicht möglich"
Die VBA Projekt Verweise habe ich bereits aktualisiert:
- Visual Basic for Applications
- OLE Automation
- Microsoft Excel 16.0 Object Library
- Microsoft Office 16.0 Object Library
- Microsoft Outlook 16.0 Object Library
Was könnte hier das Problem sein?
Liebe Grüsse
Valentin
Anzeige

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AWas ist Windows 2010? (owT)
18.04.2018 13:22:35
EtoPHG

AW: Was ist Windows 2010?
19.04.2018 13:12:55
mmat
Hi,
ins unreine gesprochen: die Server-Version die etwa zum gleichen Zeitpunkt wie Windows 8 rauskam (hat die gleiche ätzende Kachel-Optik).
vg
AW: Erstellung Email mit VBA funktioniert nicht mehr
18.04.2018 13:38:44
Pascal
Hallo Valentin,
probier es mal mit dem Verweis auf die "Microsoft Forms 2.0 Object Library"
Gruß Pascal
Anzeige
AW: Erstellung Email mit VBA funktioniert nicht mehr
18.04.2018 13:40:26
EtoPHG
Hallo Pascal,
Wie kommst du darauf, dass die Forms Library fehlen soll?
Kannst du in die Datei von Valentin schauen?
Gruess Hansueli
AW: Erstellung Email mit VBA funktioniert nicht mehr
18.04.2018 13:48:51
Pascal
Hallo Hansueli,
aufgrund der spärlichen Informationen konnte ich nur raten, vielleicht sollte ein Active X Objekt aus der Forms Bibliothek erstellt werden...
Gruß Pascal
Anzeige
AW: Erstellung Email mit VBA funktioniert nicht mehr
20.04.2018 10:14:02
Valentin
Vielen Dank für eure Antworten. Ich habe das Problem herausgefunden, nun habe ich aber ein Folgeproblem.
Ich musste unter Verweise die Microsoft Outlook 16.0 Object Library ergänzen und im VBA Code bei der E-Mail-Erstellung den Code anpassen von "Outlook.Application.14" auf "Outlook.Application.16":
Set Mail_Object = CreateObject("Outlook.Application.16")
Set Mail_Single = Mail_Object.CreateItem(0)
Das Problem ist, dass nicht alle mit dem neuen System arbeiten. Habt ihr eine Idee, wie ich dieses Problem lösen könnte? Gibt es einen Code, der ein Email ohne "Outlook.Application.16" öffnet oder kann ich eine "Wenn if" abhängig des aktuellen Systemes erstellen?
Liebe Grüsse
Valentin
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
Anzeige

Infobox / Tutorial

E-Mail-Erstellung mit VBA und Outlook: Lösungen für häufige Probleme


Schritt-für-Schritt-Anleitung

  1. Überprüfe die Verweise: Gehe in den VBA-Editor (Alt + F11) und öffne Extras > Verweise. Stelle sicher, dass die folgenden Bibliotheken aktiviert sind:

    • Microsoft Excel 16.0 Object Library
    • Microsoft Office 16.0 Object Library
    • Microsoft Outlook 16.0 Object Library
    • Microsoft Forms 2.0 Object Library (optional).
  2. VBA-Code anpassen: Wenn Du den Outlook.Application-Objektcode verwendest, achte darauf, die richtige Version zu verwenden. Du kannst den Code wie folgt anpassen:

    Set Mail_Object = CreateObject("Outlook.Application")
    Set Mail_Single = Mail_Object.CreateItem(0)
  3. Fehlermeldungen beachten: Wenn Du die Fehlermeldung „Objekterstellung durch ActiveX-Komponente nicht möglich“ erhältst, könnte es an fehlenden oder falschen Verweisen liegen.

  4. Kompatibilität sicherstellen: Wenn nicht alle Nutzer die gleiche Outlook-Version haben, kannst Du den Code so anpassen, dass er die Outlook-Anwendung unabhängig von der Version öffnet:

    On Error Resume Next
    Set Mail_Object = CreateObject("Outlook.Application")
    If Err.Number <> 0 Then
       MsgBox "Outlook ist nicht installiert."
    End If
    On Error GoTo 0

Häufige Fehler und Lösungen

  • Excel funktioniert nicht mehr: Wenn Du die Fehlermeldung erhältst, überprüfe die installierten Office-Anwendungen und aktualisiere sie gegebenenfalls.

  • Objekterstellung schlägt fehl: Stelle sicher, dass die microsoft outlook 16.0 object library korrekt installiert ist. Du kannst sie gegebenenfalls neu installieren oder die Bibliothek über das Microsoft Excel 16.0 Object Library Download-Tool abrufen.


Alternative Methoden

  • Verwendung von Microsoft Forms: In einigen Fällen kann die Verwendung der Microsoft Forms Object Library hilfreich sein, um Benutzeroberflächen zu erstellen oder Eingaben zu gestalten.

  • Automatisierung ohne Outlook: Wenn Outlook nicht installiert ist, kannst Du auch versuchen, E-Mails über andere SMTP-Server mit VBA zu versenden. Dies erfordert jedoch zusätzliche Einstellungen.


Praktische Beispiele

Hier ist ein einfacher VBA-Code, um eine E-Mail über Outlook zu erstellen:

Sub SendEmail()
    Dim Mail_Object As Object
    Dim Mail_Single As Object

    Set Mail_Object = CreateObject("Outlook.Application")
    Set Mail_Single = Mail_Object.CreateItem(0)

    With Mail_Single
        .To = "empfaenger@example.com"
        .Subject = "Test E-Mail"
        .Body = "Dies ist eine Test-E-Mail."
        .Display ' oder .Send, um die E-Mail direkt zu senden
    End With
End Sub

Tipps für Profis

  • Fehlerbehandlung einfügen: Verwende On Error-Anweisungen, um Fehler abzufangen und zu beheben.

  • Versionsüberprüfung: Implementiere eine Logik zur Überprüfung der installierten Outlook-Version, um den Code dynamisch anzupassen.

  • Code-Dokumentation: Kommentiere Deinen Code gut, um die Wartbarkeit und das Verständnis zu verbessern.


FAQ: Häufige Fragen

1. Warum funktioniert mein VBA-Code nicht mehr? Mögliche Ursachen sind fehlende Verweise oder eine nicht installierte Outlook-Version. Überprüfe die Verweise im VBA-Editor.

2. Wie kann ich sicherstellen, dass mein Code mit verschiedenen Outlook-Versionen funktioniert? Nutze den CreateObject-Befehl ohne die Versionsnummer, um flexibel auf verschiedene Outlook-Versionen zu reagieren.

3. Was kann ich tun, wenn die Outlook-Bibliothek nicht verfügbar ist? Stelle sicher, dass Microsoft Outlook installiert ist. Du kannst die microsoft outlook 16.0 object library über die Office-Installation hinzufügen.

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