Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
  • 締切済み

Outlook添付のTIFFファイルを自動印刷するマクロ

Outlook2007を利用しています。 受信フォルダの下に仕分けフォルダを作成して条件に合ったメールを仕分け受信するように設定しています。 すべてのメールにTIFFファイルが添付されています。それを、人の手で印刷する処理をしていますが、これを添付ファイルのみ自動印刷するマクロをご教授ください。 宜しくお願いします。

みんなの回答

noname#52504
noname#52504
回答No.1

なかなか回答がつかないようですので、 以下、見様見真似の恥ずかしいコードで恐縮ですが、 とりあえずご参考までに。 動作の概要  当該メールのすべての添付ファイルを、  指定された一時フォルダに保存し、  (サンプルではC:\Documents and Settings\User_Name\デスクトップ\temp)  関連付けられたアプリケーションで印刷する 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)    一時フォルダ = "C:\Documents and Settings\User_Name\デスクトップ\temp"   For Each 添付ファイル In メール.Attachments   ファイル名 = 一時フォルダ & "\" & 添付ファイル.DisplayName   添付ファイル.SaveAsFile (ファイル名)   Call ShellExecute(lngHwnd, "print", ファイル名, "", "", 1)  Next 添付ファイル  End Sub (WindowsXP/Outlook2003で動作確認) [仕訳ルールと通知]の[スクリプトを実行する]に、 Sample0710270を登録して動作させることを想定しています。 添付ファイルをいったん保存する必要があるので、 適当なフォルダをあらかじめ用意して コード中でそのパスを指定しておく必要があります。 TIFFファイルに関連付けられたアプリケーションによっては うまく動作しないかもしれません。 テスト環境では、TIFFファイルは "Microsoft Office Document Imaging"に関連付けられています。 「添付ファイルを人の目を介さずフルオートで処理する」という運用は、 なんとなくセキュリティ的にアブナい感じがします。 受信時に直接動作させるのではなく、 受信時には中間フォルダに移動させるだけにし、 目視で確認した上で再度仕訳ルールを適用して 一括して印刷と移動を行うようにした方が安全かと思います。 あるいは、受信時には添付ファイルを保存するだけにして、 エクスプローラ上で複数選択⇒右クリック⇒印刷 とか。

すると、全ての回答が全文表示されます。

関連するQ&A