An Sepp? Nochmal Hilfe !!!
27.04.2004 17:58:21
peter
Von Dir kommt folgendes Makro:
Option Explicit
Declare
Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Sub BlattKopierenUndVersenden()
'alle Tabellenblätter als Arbeitsmappe
'im Temporären Ordner speichern, als
'Anlage mit Outlook versenden und anschliesend löschen
'Empfängeradresse steht in "G3" der jeweiligen Tabelle
Dim wks As Worksheet
Dim strAddress As String
Dim strPath As String
Dim strName As String
Dim strFile As String
strPath = "C:\winnt\Temp\" 'Pfad des Temporären Ordners
Application.ScreenUpdating = False
On Error GoTo FEHLER
For Each wks In ThisWorkbook.Sheets
With wks
strName = wks.Name 'Tabellenname
strFile = strPath & strName & ".xls" 'Dateiname
strAddress = .[G3] 'Empfänger
.Copy
End With
With ActiveWorkbook
.SaveAs strFile
Senden strFile, strAddress 'Datei versenden
.Close
End With
Kill strFile 'Datei löschen
Next
FEHLER:
Application.ScreenUpdating = True
End Sub
Sub Senden(AWS As String, strTo As String)
Dim Nachricht As Object, OutApp As Object
Set OutApp = CreateObject("Outlook.Application")
Set Nachricht = OutApp.CreateItem(0)
With Nachricht
.To = strTo 'Empfänger
.Subject = "Betriebsabrechnungsbogen" 'Betreff
.attachments.Add AWS 'Anlage(Tabelle)
.Body = "Das ist ein Test." & vbCrLf & "Bitte ignorieren." 'Nachrichtentext
'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
Sleep 5000 'warten auf Outlook
End Sub
Dieses Makro ist in der Datei BAB.xls gespeichert. Wenn ich nun eine neue Datei öffne, kann ich dieses Makro in der der neuen Datei nicht abspielen. Wie kann ich das ändern, bzw. woran liegt das ????
Gruß
peter