Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
860to864
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
860to864
860to864
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

860to864: 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

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
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
Anzeige

123 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige