Ich habe eine Arbeitsmappe, die ich mit Makros per E-Mail versenden möchte. Auf diese Weise kann der Empfänger auch die Makros verwenden, die in der Arbeitsmappe enthalten sind. Das erleichtert meinem Unternehmen das Büroleben. Ich habe versucht, den gespeicherten Dateinamen auf .xlsm einzustellen, aber das verursacht einen Fehler.Arbeitsmappe mit Makros und allen per E-Mail versenden
Dies ist mein Code (die online von Quellen angepasst ist)
Sub MailGo()
'Variable declaration
Dim oApp As Object, _
oMail As Object, _
WB As Workbook, _
FileName As String, MailSub As String, MailTxt As String
'Turns off screen updating
Application.ScreenUpdating = False
'Makes a copy of the active sheet and save it to
'a temporary file
ActiveSheet.Copy
Set WB = ActiveWorkbook
FileName = "Text.xls"
On Error Resume Next
Kill "C:\" & FileName
On Error GoTo 0
WB.SaveAs FileName:="C:\Users\Public\Documents" & FileName
'Creates and shows the outlook mail item
Set oApp = CreateObject("Outlook.Application")
Set oMail = oApp.CreateItem(0)
With oMail
.To = "[email protected]"
.Cc = ""
.Bcc = ""
.Subject = "LotInput"
.Body = "LotInput"
.Attachments.Add WB.FullName
.Display
.send
End With
'Deletes the temporary file
WB.ChangeFileAccess Mode:=xlReadOnly
Kill WB.FullName
WB.Close SaveChanges:=False
'Restores screen updating and release Outlook
Application.ScreenUpdating = True
Set oMail = Nothing
Set oApp = Nothing
End Sub
Es gibt wahrscheinlich E-Mail-Sicherheitseinstellungen, die Sie ohne Unterstützung Ihres sysAdmin nicht umgehen können, aber das Deaktivieren dieser Sicherheitsfunktionen ist nicht ratsam. Sicherlich gibt es eine gemeinsame Dateifreigabe, die Sie speichern können, um dann einen Link in die E-Mail zur Datei einzufügen, damit sie die 'xlsm' auf ihren lokalen Rechner ziehen können. – GibralterTop
Was ist der Fehler und welche Anweisung verursacht das? –