Hallo zusammen,
mit Hilfe von diesem Code wird an einen bestimmten Empfänger, welcher in Zelle U1 steht, dass Tabellenblatt "unverbindliche Voranmeldung" verschickt.
Nun möchte ich, dass das Tabellenblatt ohne Zellbezüge kopiert.
Der Grund dafür liegt darin, dass nach abspeichern der empfangenen Datei, sich die Inhalte verschieben.
Danke und Grüße
Felix
VBA-Code:
Sub einzelnes_Blatt_senden()
Dim strBlatt As String
Dim strDatei As String
Dim strPfad As String
Dim outObj As Object
Dim Mail As Object
Dim strBodyText As String
Set outObj = CreateObject("Outlook.Application")
Set Mail = outObj.CreateItem(0)
'** Pfad für temporäre Zwischenspeicherung angeben
strPfad = "C:\Temp" 'entsprechend anpassen
'** Gewünschtes Tabellenblatt in neue Arbeitsmappe kopieren
strBlatt = "unverbindliche Voranmeldung"
'** Gewähltes Tabellenblatt kopieren
Sheets(strBlatt).Copy
'** Blatt temporär in vorgegebenes Verzeichnis abspeichern
ActiveWorkbook.SaveAs strPfad & "\" & ActiveSheet.Name
'** Pfad und Dateiname der neuen Datei zwischenspeichern
strDatei = ActiveWorkbook.FullName
'** Mail erzeugen
With Mail
.To = Range("V1").Value
'.CC = ""
.Subject = "unverbindliche Voranmeldung" 'Betreff
.BodyFormat = 2 '2 = HTML, 1 = Text
.Attachments.Add strDatei 'Anhang
.Body = strBodyText 'Bodytext / Signatur
End With
'** Erzeugte Datei schließen
Workbooks(Dir(strDatei)).Close
'** Erzeugte Datei wieder löschen
Kill (strDatei)
'** E-Mail anzeigen
Mail.Display
End Sub
|