2016-07-28 8 views
0

これは私がしたいことです。彼らは文書を開き、フォームに記入し、送信ボタンを押すと、入力された文書を印刷し、別の名前でそれをユーザー入力と一緒に保存し、新しい文書にデータを電子メールで送信することになっています。新しい文書を電子メールで送信する以外はすべて動作しています。元の文書ではなく、保存した文書をVBAで電子メールに送信する方法

電子メールを受け取るために記入した完全な文書か、添付ファイルとして記入した内容が必要です。いくつかの時点で

Private Sub CommandButton1_MouseUp(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single) 
Application.ActiveDocument.PrintOut 
Dim strDocName As String 
    Dim intPos As Integer 
    'Ask the user to provide a filename 
     strDocName = InputBox("Please enter the name " & _ 
      "of your document.") 
ActiveDocument.SaveAs FileName:=strDocName, _ 
     FileFormat:=wdFormatDocument 

Options.SendMailAttach = True 
ActiveDocument.SendMail 

End Sub 
+0

現在何が起こっていますか?書類は一切添付されていませんか? –

+0

新しい文書は保存されますが、画面上の文書は依然として元の文書であり、新しい文書の代わりに添付されるものです。 – pchapman

答えて

1

、古いものと新しい文書から「のActiveDocument」スイッチ:

は、ここに私のコードです。新しいものを明示的に参照する必要があります。

スイッチオーバーの発生場所はわかりませんが、これを試してください。

は、変更を行います。

Options.SendMailAttach = True 
ActiveDocument.SendMail 

Dim MailDoc as Document 
Set MailDoc = ActiveDocument 

Options.SendMailAttach = True 
MailDoc.SendMail 
関連する問題