2012年4月27日金曜日

Outlookで添付ファイルを自動保存&自動印刷

たまには更新しないと…

表題の機能を探していたところ、
OKWaveでわざわざ質問者のために作成している人がいた。

http://okwave.jp/qa/q3434242.html

参考にならないサイトばかりの中、ピンポイントで求めるものが見つかったので歓喜。
消された時のために保存。

Private Declare Function ShellExecute Lib "SHELL32.dll" _
  Alias "ShellExecuteA" _
  (ByVal hWnd As Long, _
   ByVal lpOperation As String, _
   ByVal lpFile As String, _
   ByVal lpParameters As String, _
   ByVal lpDirectory As String, _
   ByVal nShowCmd As Long) As Long

Sub Sample0710270(メール As MailItem)
  一時フォルダ = "\\ファイルパス)"
  For Each 添付ファイル In メール.Attachments
    ファイル名 = 一時フォルダ & "\" & 添付ファイル.DisplayName
    添付ファイル.SaveAsFile (ファイル名)
    Call ShellExecute(lngHwnd, "print", ファイル名, "", "", 1)
  Next 添付ファイル
End Sub

1 件のコメント:

  1. 具体的にこのプログラムの
    Sub Sample0710270(メール As MailItem)  
     一時フォルダ = "C:\Documents and Settings\User_Name\デスクトップ\temp" 
     For Each 添付ファイル In メール.Attachments
      ファイル名 = 一時フォルダ & "\" & 添付ファイル.DisplayName
      添付ファイル.SaveAsFile (ファイル名)
      Call ShellExecute(lngHwnd, "print", ファイル名, "", "", 1)
     Next 添付ファイル 
    End Sub
    添付ファイルやらメールやらの日本語の部分をどのように変えて使用したらいいのでしょうか?例文を作っていただけるとありがたいです。

    返信削除