2017-09-27 1 views
-1

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 
+0

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

+0

Was ist der Fehler und welche Anweisung verursacht das? –

Antwort

1

Sie auch dieses Argument sind in Ihrer .SaveAs Linie müssen.

+0

Vielen Dank das war sehr hilfreich! Das einzige Problem, mit dem ich dabei stehe, ist, dass das Dateiformat, obwohl Makro aktiviert ist, die vorhandenen Makros im Dokument nicht bewahrt. –

Verwandte Themen