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

860to864: E-mailAnhang vba Excel

Forumthread: E-mailAnhang vba Excel

E-mailAnhang vba Excel
10.04.2007 08:34:00
Lars
Hallo liebe Forumsgemeinde,
ich habe vor kurzem ein Makro gefunden, welches ein bestimmtes Worksheet aus einer Mappe in eine andere Mappe überträgt und diese dann als Email-anhang versendet.
Nun möchte ich dieses Makro gern erweitern - und zwar so, dass ich eine bestimmte Auswahl an Tabellenblätter (z.B. Tabellenblätter A, B und D) in einer neuen Mappe per Email versenden kann.
Ich habe bereits versucht, ob es mit nem array funktioniert - hat leider nicht geklappt - oder ich habe es falsch eingebaut....
Kann mir jemand weiterhelfen?
Hier der Code:

Sub SpeichernSenden()
Dim Name As String, wb As Workbook, ws As Worksheet, _
BetreffDetail As String
Const olByValue = 1
Const olMailItem = 0
Dim oOApp
Dim oOMail
Dim Mail As Object
Set oOApp = CreateObject("Outlook.Application")
Set oOMail = oOApp.CreateItem(olMailItem)
Set wb = ActiveWorkbook
Set ws = wb.Sheets("A") '(Array("A", "B", "D"))
Set ws_2 = wb.Sheets("B")
Set ws_3 = wb.Sheets("D")
Name = "P:\t\team6\Monitoring\Temporary\MS_BÖ_aktuell.xls"
ws.Copy 'kopieren und neue Datei erstellen
'ws_2.Copy
'ws_3.Copy
Application.DisplayAlerts = False
ActiveWorkbook.SaveAs Filename:=Name, FileFormat:=xlNormal
Set ws = ActiveSheet
ws.Cells.Select 'alle markieren
ws.Select
Selection.Copy: Selection.PasteSpecial Paste:=xlValues 'kopieren und auf Werte setzen
Range("A1").Select
ActiveWorkbook.Save
ActiveWorkbook.Close 'schließen
Application.DisplayAlerts = True
With oOMail
.To = "L.W@web.de"
.cc = "B.B@web.de"
.Subject = "MS_BÖ_aktuell.xls"
.Body = Chr(13) & Chr(13) & _
"Sehr geehrter Herr Mustermann," & Chr(13) & Chr(13) & _
"in der Anlage sende ich Ihnen..." & Chr(13) & _
"bla bla bla" & Chr(13) & Chr(13) & _
"Mit freundlichen Grüßen," & Chr(13) & Chr(13) & _
"LW"
.attachments.Add Name, olByValue, 1 'Anhang einfügen
End With
oOMail.Display
'Application.Wait (Now + TimeValue("0:00:10")) 'warten bis alles versandt
Kill Name 'Datei löschen
End Sub

Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: E-mailAnhang vba Excel
10.04.2007 09:45:00
Rudi
Hallo,
ActiveWorkbook.Sheets(Array("A", "B", "D")).Copy
Bennene unbedingt deine Variable Name um. Name ist ein Schlüsselwort in VBA.
Dim strName as String
Gruß
Rudi
Eine Kuh macht Muh, viele Kühe machen Mühe
AW: E-mailAnhang vba Excel
10.04.2007 09:57:00
Lars
Hallo Rudi,
vielen Dank für die Tips - werde sie gleich einbauen.
Vielen Dank!
Grüße
Lars
Anzeige
AW: E-mailAnhang vba Excel
10.04.2007 10:03:00
Peter
Hallo Lars,
zwar nichr Excel, aber doch wichtig: Ändere in deiner Mail den Text 'in der Anlage' in 'als Anlage'.
In der Anlage heißt, dass du die Mail in einem Park - eben einer (Garten) Anlage - sendest und ist miserables Deutsch.
Gruß Peter
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken

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