Probleme bei Seriene-Mail mit Anhang, mit dem Makro

Nancy007

Grünschnabel
Hallo ich und meine Kollegin versuchen gerade über ein Makro eine, Serien E-mail mit Anhang zu erstellen. Wir haben uns schon durchs Internet "gewühlt" und sind ziemlich weit gekommen. Wir haben ein Makro in den Visual Basic Editor kopiert (Makro siehe unten), wenn wir dieses nun ausführen wollen kommt die Fehlermeldung. Fehler beim Kompilieren. Sub oder Function ist nicht definiert. Was müssen wir noch machen? Fehlt da noch eine eingabe?

Makro von Seite (http://word.mvps.org/faqs/mailmerge/MergeWithAttachments.htm)

Sub emailmergewithattachments()



Dim Source As Document, Maillist As Document

Dim Datarange As Range

Dim Counter As Integer, i As Integer

Dim bStarted As Boolean

Dim oOutlookApp As Outlook.Application

Dim oItem As Outlook.MailItem

Dim mysubject As String, message As String, title As String



Set Source = ActiveDocument



' Check if Outlook is running. If it is not, start Outlook

On Error Resume Next

Set oOutlookApp = GetObject(, "Outlook.Application")

If Err <> 0 Then

Set oOutlookApp = CreateObject("Outlook.Application")

bStarted = True

End If



' Open the catalog mailmerge document

With Dialogs(wdDialogFileOpen)

.Show

End With

Set Maillist = ActiveDocument



' Show an input box asking the user for the subject to be inserted into the email messages



message = "Enter the subject to be used for each email message." ' Set prompt.

title = " Email Subject Input" ' Set title.

' Display message, title

mysubject = InputBox(message, title)



' Iterate through the rows of the catalog mailmerge document, extracting the information

' to be included in each email.

Counter = 1

While Counter <= Maillist.Tables(1).Rows.Count

Source.Sections.First.Range.Cut

Documents.Add

Selection.Paste

Set oItem = oOutlookApp.CreateItem(olMailItem)

With oItem

.Subject = mysubject

.Body = ActiveDocument.Content

Set Datarange = Maillist.Tables(1).Cell(Counter, 1).Range

Datarange.End = Datarange.End - 1

.To = Datarange

For i = 2 To Maillist.Tables(1).Columns.Count

Set Datarange = Maillist.Tables(1).Cell(Counter, i).Range

Datarange.End = Datarange.End - 1

.Attachments.Add Trim(Datarange.Text), olByValue, 1

Next i

.Send

End With

Set oItem = Nothing

ActiveDocument.Close wdDoNotSaveChanges

Counter = Counter + 1

Wend



' Close Outlook if it was started by this macro.

If bStarted Then

oOutlookApp.Quit

End If



'Clean up

Set oOutlookApp = Nothing

Source.Close wdDoNotSaveChanges

Maillist.Close wdDoNotSaveChanges



End Sub
 
Der Editor hatte gleich die erste markiert. Also diese:
Sub emailmergewithattachments()

Bin etwas ratlos, da es ja bei anderen wohl zu funktionieren scheint. Oder ich muss doch noch etwas eingeben?
 
Dann ist das ein Hinweis, dass du irgendwo eine Funktion verwenden willst, welche nicht definiert ist
 
Vielen Dank für die Antwort, ich habe bisher noch nichts programmiert und dieses Makro ist nur kopiert, scheint aber bei anderen zu funktionieren.
Unsere Vermutung ist das in die Klammer der Pfad zu einer Datei kommt. Das hatten wir dann auch gemacht, also zum Beispiel c:\Eigene Dateien\Word.doc, dann hatten wir die die nächste Fehlermeldung, ich weiß sie gerade nicht mehr genau, irgendwas mit Listentrennzeichen und der Doppelpunkt war markiert? Müsste man das anders eingeben?
 

Neue Beiträge

Zurück