Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1604to1608
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
Inhaltsverzeichnis

xlsm-Datei als Mail-Anhang - VBA-Module gelöscht

xlsm-Datei als Mail-Anhang - VBA-Module gelöscht
09.02.2018 10:10:55
Tobi
Hallo zusammen,
ich habe wieder mal ein VBA-Problem. Ich habe in einer Excel-Datei einige Makros eingebaut. Unter Anderem Ein VBA-Modul, welches die einzelnen Worksheets in eine neue temporäre Excel-Datei (Format .xlsm) kopiert, diese automatisch als E-Mail-Anhang im Outlook anhängt und dann die neu erstellte Datei wieder schließt (siehe bitte nachfolgender Code):

Sub Mail_senden_WiLog()
Dim MyMessage As Object, MyOutApp As Object
Dim SavePath As String
Dim AWS As String
SavePath = Environ("UserProfile") & "\Desktop"
'Kopiert aktuelles Sheet in eine neue Mappe
'welche nur diese Tabelle enthält
Worksheets(Array("Tabelle1", "Tabelle2", "Tabelle3", "Tabelle4", "Tabelle5")). _
Copy
Application.DisplayAlerts = False
'Speichert die Datei unter dem Tabellennamen und einem Zeitstempel
ActiveWorkbook.SaveAs SavePath & "\" & ActiveSheet.Name & "_" & "xxx" & "_" & Format(Now, "  _
_
dd_mm_yyyy") & ".xlsm", FileFormat:=52
'Mappenname wird an Variable übergeben
'und anschliessend gleich geschlossen
With ActiveWorkbook
AWS = .FullName
.Close
End With
'InitializeOutlook = True
Set MyOutApp = CreateObject("Outlook.Application")
'Nachrichtenobject erstellen
Set MyMessage = MyOutApp.CreateItem(0)
With MyMessage
.To = "xxx@yyy.de; qqq@yyy.de"
.Subject = "ttt" & Format(Date, "dd_mm_yy")
'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 = "Hallo ..."
'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
Set MyOutApp = Nothing
Set MyMessage = Nothing
End Sub
Nun exisitert folgendes Problem: Wenn ich die Datei dann weiter schicke, kann der Empfänger diese problemlos öffnen, aber alle VBA-Codes, die in den einzelnen Modulen gespeichert waren, werden gelöscht und sind in der versendeten Datei nicht mehr vorhanden - die Schaltflächen werden jedoch weiterhin angezeigt. Kann man irgendwie dafür sorgen, dass die Module mit versendet werden?
Sonst würde das gesamte Konzept nicht mehr funktionieren.
Besten Dank vorab für eure Unterstützung.
BG Tobi

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: xlsm-Datei als Mail-Anhang - VBA-Module gelöscht
09.02.2018 10:43:49
mumpel
Hallo!
Was sind das für Schaltflächen? Formularsteuerelemente oder ActiveX-Schaltflächen? Letztere sind besser, da kannst Du den Code direkt unterbringen und die Codes sind dann auch in den Kopien enthalten.
Wo stehen die Makros? Wenn die Makros in einem allgemeinen Modul stehen ist es normal dass die Makros bei Formularsteuerelementen nicht mehr da sind. Denn Du kopierst ja nur die Tabellen in eine neue Arbeitsmappe.
Gruß, René
AW: xlsm-Datei als Mail-Anhang - VBA-Module gelöscht
09.02.2018 12:12:09
Tobi
Hallo Rene,
du hast vollkommen Recht, daran lag das Problem - es waren normale Schaltflächen.
Jetzt funktioniert es perfekt.
Vielen Dank dir - hat mir viel Ärger erspart :)
Beste Grüße Tobi
Anzeige

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige