Hallo,
ich bin VBA-Neuling und bräuchte dringend eure Hilfe zu folgendem Problem:
Aktuell kopiere ich das komplette Worksheet das mit GPM beginnt in die Zwischenablage und verschicke die Datei anschliessend an den
Mailempfänger, der jeweils in der Zelle A1 steht.
das ist der Code dazu, der auch soweit funktioniert:
Sub Excel_Sheet_via_Outlook_Senden()
Dim MyMessage As Object, MyOutApp As Object
Dim SavePath As String
Dim AWS As String
Dim ws As Worksheet
Dim mail As String
For Each ws In ActiveWorkbook.Worksheets
ws.Activate
If Left(ws.Name, 3) = "GPM" Then
mail = ws.Range("A1")
Application.ScreenUpdating = Fals
Application.DisplayAlerts = False
SavePath = "C:\temp" '"E:\Eigene Dateien"
ActiveSheet.Copy
'Speichert die Datei unter dem Tabellennamen und einem Zeitstempel
ActiveWorkbook.SaveAs SavePath & "\" & ActiveSheet.Name & "_" & Format(Now, "ddmmyyyy_hhmm") & ".xlsx"
'Mappenname wird an Variable übergeben
'und anschliessend gleich geschlossen
Application.DisplayAlerts = True
'schaltet Meldungen ein
Application.ScreenUpdating = True
'Bildschirmaktualisierung eingeschaltet
With ActiveWorkbook
AWS = .FullName
.Close
End With
'InitializeOutlook = True
Set MyOutApp = CreateObject("Outlook.Application")
'Nachrichtenobject erstellen
Set MyMessage = MyOutApp.CreateItem(0)
With MyMessage
.To = mail
.Subject = "Testmeldung " & Date & Time
'Hier wird die temporär gespeicherte Datei als
'Attachment zugefügt
.Attachments.Add AWS
'Hier wird eine normale Text Mail erstellt
.body = "Das ist ein Test" & vbCrLf & "Bitte ignorieren"
'Hier wird die HTML Mail erstellt
'.HTMLBody = "Das ist ein Test." & vbCrLf & "Bitte ignorieren."
'Hier wird die Mail nochmals angezeigt
.Display
'Hier wird die Mail gleich in den Postausgang gelegt
'.Send
'Hier wird die temporäre Datei wieder gelöscht
Kill AWS
End With
End If
Next
'MyOutApp.Quit
Set MyOutApp = Nothing
Set MyMessage = Nothing
End Sub
Nun habe ich die Anforderung, dass nur ab der 3. Zeile bis zum jeweiligen Ende des Worksheets die Datei verschickt werden soll. Hab alles mit Range probiert und bekomme es einfach nicht hin.
Kann mir jemand diesbezüglich helfen ? oder hat ein Beispiel an dem ich mich orientieren kann?
Vielen lieben Dank.
Franzi
|