Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Email mit David Tobit

Forumthread: Email mit David Tobit

Email mit David Tobit
Fuhrmann
Guten Morgen,
ich möchte per Makro eine Email mit David Tobit senden. Das Problem ist, dass sobald ich mehr als 4 Emailempfänger in der Variablen sAdresse habe, wird die Email nicht versendet.
Makro dazu siehe hier:
Sub david_tobit_mail()
Dim oApp As DvApi32.IApplication
Dim oAccount As DvApi32.Account
Dim oArchive As DvApi32.Archive
Dim oMailItem As DvApi32.MailItem
Dim oAttachment As DvApi32.Attachment
Dim l As Long
Dim sAdresse As String
Dim sAufDat As String
Dim sHinweis As String
Dim chtPicture As Chart
Dim strSheetName As String
Dim c As Range
Application.ScreenUpdating = False
On Error GoTo Fehler
Set oApp = CreateObject("DVOBJAPILib.DvISEAPI")
Set oAccount = oApp.Logon("", "", "", "", "", "AUTH")
Set oArchive = oAccount.GetSpecialArchive(DvApi32.DvArchiveTypes.DvArchivePersonalOut)
Set oMailItem = oArchive.NewItem(DvApi32.DvItemTypes.DvEMailItem)
sAdresse = c
l = oMailItem.Recipients.Add(sAdresse, "MAIL", "") ' <-- sAdresse kann maximal 4 Emailempfänger enthalten!
Wer kann mir bei diesem speziellen Problem weiterhelfen?
Gruß
Frederik Fuhrmann
Anzeige

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Email mit David Tobit
18.07.2011 14:12:53
mumpel
Hallo!
Da solltest Du Dich mal an den Hersteller wenden. david.fx ist so exotisch dass sich nur sehr sehr sehr wenige damit auskennen. IMHO findest Du in diesem Forum keinen der das kann.
Gruß, René
AW: Email mit David Tobit
18.07.2011 15:04:12
Beverly
Hi Frederic,
ich kann dir zwar nicht beim eigentlichen Problem helfen, aber wie wäre es mit einem Workaround, indem du in einer Schleife über alle Zellen des Bereichs läufst und jede Mail einzeln abschickst?


Anzeige
AW: Email mit David Tobit
18.07.2011 15:25:29
Fuhrmann
Hallo Karin,
so habe ich mir momentan auch beholfen, gehe in einer Schleife die Empfänger in 4-er Blöcken durch.
Mit dem Ergebnis, dass es jeder nochmal weiterleitet, weil man denkt die Mail wäre nur an 4 Leute gegangen ;-(
Gruß
Frederik
AW: Email mit David Tobit
18.07.2011 15:45:55
mumpel
Ich kann jetzt nur von Outlook ableiten. Ob es funktioniert weiss ich nicht. Nutze "To", "CC" und "BCC".
Es könnte auch sein dass l als String deklariert sein muss, nicht als Long. Denn Du willst ja einen Text übergeben, keine Zahlen.
Anzeige
AW: Email mit David Tobit
18.07.2011 15:50:01
Fuhrmann
Hallo,
danke für deine Hilfe. Die Outlook-Befehle kenne ich, aber die David-Befehle leider nicht....
Kann ich mir irgendwie auch auflisten welche Befehle in der Library verwendet werden können?
Gruß
Frederik Fuhrmann
AW: Email mit David Tobit
18.07.2011 15:59:11
mumpel
Ja, in der Objekt-Bibliothek zu finden. Objektexplorer aufrufen, dort wo "Alle Biblitheken" steht wählst Du die Bibliothek für david.fx. Dann wird alles aufgelistet was in der dll steht.
Anzeige
AW: Email mit David Tobit
18.07.2011 16:02:49
Fuhrmann
Das hilft mir schonmal ein Stück weiter....
Danke
Gruß
Frederik Fuhrmann
;
Anzeige

Infobox / Tutorial

Email mit David Tobit versenden


Schritt-für-Schritt-Anleitung

  1. Makro erstellen: Beginne mit der Erstellung eines neuen Makros in Excel. Öffne den VBA-Editor mit ALT + F11.

  2. Code einfügen: Füge den folgenden Code in ein neues Modul ein:

    Sub david_tobit_mail()
       Dim oApp As DvApi32.IApplication
       Dim oAccount As DvApi32.Account
       Dim oArchive As DvApi32.Archive
       Dim oMailItem As DvApi32.MailItem
       Dim l As Long
       Dim sAdresse As String
    
       Application.ScreenUpdating = False
       On Error GoTo Fehler
       Set oApp = CreateObject("DVOBJAPILib.DvISEAPI")
       Set oAccount = oApp.Logon("", "", "", "", "", "AUTH")
       Set oArchive = oAccount.GetSpecialArchive(DvApi32.DvArchiveTypes.DvArchivePersonalOut)
       Set oMailItem = oArchive.NewItem(DvApi32.DvItemTypes.DvEMailItem)
    
       ' Hier die E-Mail-Adressen einfügen
       sAdresse = "example1@mail.com; example2@mail.com; example3@mail.com; example4@mail.com" ' max. 4 Adressen
       l = oMailItem.Recipients.Add(sAdresse, "MAIL", "")
       oMailItem.Subject = "Betreff der E-Mail"
       oMailItem.Body = "Inhalt der E-Mail"
       oMailItem.Send
    
       Exit Sub
    
    Fehler:
       MsgBox "Ein Fehler ist aufgetreten: " & Err.Description
    End Sub
  3. E-Mail senden: Führe das Makro aus, um die E-Mail über David Tobit zu versenden. Achte darauf, dass sAdresse maximal 4 E-Mail-Adressen enthält.


Häufige Fehler und Lösungen

  • Problem: E-Mail wird nicht gesendet, wenn mehr als 4 Empfänger angegeben sind.

    • Lösung: Teile die Empfänger in Gruppen von 4 auf und sende mehrere E-Mails nacheinander.
  • Problem: Fehlermeldungen bei der Ausführung des Makros.

    • Lösung: Überprüfe, ob die richtige Bibliothek für david.fx referenziert ist. Nutze den Objektexplorer, um sicherzustellen, dass alle benötigten Objekte vorhanden sind.

Alternative Methoden

Wenn du mehr als 4 Empfänger versenden möchtest, kannst du einen Workaround verwenden:

  1. Erstelle eine Schleife, die durch die E-Mail-Adressen iteriert und jede E-Mail einzeln versendet.

    Dim empfaenger As Variant
    empfaenger = Split("email1@mail.com;email2@mail.com;email3@mail.com;email4@mail.com;email5@mail.com", ";")
    
    For i = LBound(empfaenger) To UBound(empfaenger)
       sAdresse = empfaenger(i)
       l = oMailItem.Recipients.Add(sAdresse, "MAIL", "")
       oMailItem.Send
    Next i

Praktische Beispiele

Ein Beispiel für das Senden von E-Mails mit David Tobit:

Sub sendEmails()
    Dim empfaenger As String
    empfaenger = "max@mail.com; john@mail.com; jane@mail.com; doe@mail.com"

    ' Sende E-Mail
    Call david_tobit_mail(empfaenger)
End Sub

Hierbei wird die Funktion david_tobit_mail mit der Liste der Empfänger aufgerufen.


Tipps für Profis

  • Verwende Variablen: Nutze Variablen, um Empfänger und Inhalte dynamisch zu gestalten.
  • Debugging: Setze Breakpoints im VBA-Editor, um den Code Schritt für Schritt zu testen.
  • Fehlerbehandlung: Implementiere umfassende Fehlerbehandlung, um Probleme beim Versand frühzeitig zu erkennen.

FAQ: Häufige Fragen

1. Wie kann ich herausfinden, welche Befehle in der David-Bibliothek verfügbar sind?
Du kannst den Objektexplorer in Excel öffnen und die Bibliothek für david.fx auswählen. Dort findest du eine Liste aller verfügbaren Befehle.

2. Funktioniert das Makro auch in anderen Excel-Versionen?
Das Makro sollte in den meisten modernen Excel-Versionen funktionieren, sofern die david.fx Bibliothek korrekt installiert ist.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige