Herbers Excel-Forum - das Archiv

einzelnes Arbeitsblatt als E-mail senden

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
Bild

Betrifft: einzelnes Arbeitsblatt als E-mail senden
von: Matthias

Geschrieben am: 13.04.2005 14:12:40
Hallo Freunde,
Habe eine Frage zum versenden von Arbeitsblätter aus dem Excel 2003 heraus.
Wie kann ich ein einzelnes Arbeitsblatt zu einem E-mail Empfänger senden.
Eine ganze Arbeitsmappe ja einfach.
(datei senden an Email Empfänger als Anlage)
Wer kann mir helfen?
Tschüss
Matthias
Bild

Betrifft: AW: einzelnes Arbeitsblatt als E-mail senden
von: Erich M.

Geschrieben am: 13.04.2005 14:20:18
Hallo Matthias,
mein Muster:

Sub BlattKopierenUndVersenden()
'aktives Tabellenblatt als Arbeitsmappe
'im Temporären Ordner speichern, als
'Anlage mit Outlook versenden und anschliesend löschen
Dim strPath As String
Dim strName As String
Dim strFile As String
strPath = "C:\Windows\Temp\" 'Pfad
strName = InputBox("Dateiname eingeben, xls wird automatisch vergeben")
If strName = "" Then Exit Sub
'strName = ActiveSheet.Name 'Tabellenname
strFile = strPath & strName & ".xls"
Application.ScreenUpdating = False
ActiveSheet.Copy
Cells.Select
Selection.Copy
Call Verknuepfungen_löschen
'Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
' False, Transpose:=False

Range("A1").Select
Application.CutCopyMode = False
With ActiveWorkbook
.SaveAs strFile
Senden strFile 'Datei versenden
.Close
End With
Kill strFile 'Datei löschen
Application.ScreenUpdating = True
End Sub
Sub Senden(AWS As String)
Dim Nachricht As Object, OutApp As Object
Set OutApp = CreateObject("Outlook.Application")
Set Nachricht = OutApp.CreateItem(0)
With Nachricht
.To = "test@online.de"
'.Subject = InputBox(strName) '"strName" ' "Betreffzeile Header"
.attachments.Add AWS
'.Body = "Das ist ein Test." & vbCrLf & "Bitte ignorieren."
'Hier wird die Mail nochmals angezeigt
.Display
'Hier wird die Mail gleich in den Postausgang gelegt
'.Send
End With
'OutApp.Quit
'Set OutApp = Nothing
'Set Nachricht = Nothing
End Sub
Sub Verknuepfungen_löschen()
ActiveSheet.Unprotect
On Error GoTo Errorhandler
Do
Cells.Find(What:=".XLS", After:=ActiveCell, LookIn:=xlFormulas, LookAt _
:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _
False).Select
Selection.Copy
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
Application.CutCopyMode = False
Loop
Errorhandler:
End Sub


Code eingefügt mit: Excel Code Jeanie
mfg
Erich
EXCEL-Shareware und Freeware: http://www.toolex.de
EXCEL und Lottogewinne machen glücklich: http://48678.rapidforum.com
 Bild
Excel-Beispiele zum Thema "einzelnes Arbeitsblatt als E-mail senden"
Einzelnes Tabellenblatt speichern Einzelnes Zeichen aus einer InputBox-Eingabe auslesen
Einzelnes Tabellenblatt unter Tagesdatum speichern 1000 Arbeitsblätter aus 1000 Arbeitsmappen einlesen
Aktueller Arbeitsblattname in Formel Arbeitsblatt 40 mal kopieren
40 neue Arbeitsblätter hinzufügen Diagramm aus Arbeitsblatt in Diagrammblatt übertragen
Wert in alle Arbeitsblätter eintragen Ausgewählte Arbeitsblätter auslesen