web-dev-qa-db-ja.com

Outlookで一度に多くのメールの添付ファイルを保存しますか?

誰かが私に200通のメールを1通ずつ添付ファイルを1つずつ送ってくれました。 ため息

次の3泊は毎晩さらに200通予定です(メールはサーバーから送信されるため、バッチ処理を依頼することはできません)。

添付ファイルには固有のファイル名があるので、メールのグループ全体から一度に添付ファイルを保存する簡単な方法はありますか?

各メールを個別に開き、右クリック、保存、すすぎ、繰り返す必要はありません...

私はVBAに堪能で、Excelマクロの作成に非常に慣れているので、すべてのメッセージの特定のフォルダーをトラバースし、それぞれの添付ファイルを保存することは比較的簡単であると想像できますが、Outlookマクロを作成したことがなく、オブジェクト階層。

18
richardtallent

NirSoftのOutlookAttachViewは、コマンドラインからでもこれを簡単に実行できます。

OutlookAttachViewは、Outlookに保存されているすべてのメッセージをスキャンし、見つかったすべての添付ファイルのリストを表示します。 1つ以上の添付ファイルを簡単に選択して目的のフォルダーに保存したり、メールボックスのディスク領域が多すぎる不要な大きな添付ファイルを削除したりできます。添付ファイルのリストをxml/html/text/csvファイルに保存することもできます。

alt text

OutlookAttachViewはフリーウェアです。

14
John T

Outlook Attachment Remover Add-in

添付ファイルを保存および抽出するための無料のOutlookアドイン。Outlookファイルのサイズを縮小します。使いやすい。たくさんの機能。

image

6
harrymc

これにはいくつかのオプションがあります。

Sue Mosherのサイト http://slipstick.com はOutlookの素晴らしいリソースです。彼女はマイクロソフトMVPでもあります。

あなたがそこにいるコーダーのために: ハードドライブに添付ファイルを保存する または代わりに VBAを使用して添付ファイルを保存して開く

次のコードは、Outlook 2000以降で機能します。選択したメッセージの添付ファイルを保存しますが、メッセージから添付ファイルを削除しません。

このページのコードをコピーして、ThisOutlookSessionプロジェクトに貼り付けます。

OutlookでAlt + F11を押してVBAエディターを開き、Microsoft Outlookオブジェクトを展開してから、ThisOutlookSessionをダブルクリックして編集ペインで開き、Ctrl + Vでコードを貼り付けます。

これを使用するには、まずマイドキュメントの下にOLAttachmentsという名前のフォルダーを作成する必要があります(コードではフォルダーは作成されません)。次に、1つ以上のメッセージを選択し、マクロを実行して添付ファイルを保存します。マクロを有効にする前、またはマクロに署名する前に警告するマクロセキュリティを設定する必要があります。コードを編集することにより、添付ファイルが保存されるフォルダー名またはパスを変更できます。

Public Sub SaveAttachments()
Dim objOL As Outlook.Application
Dim objMsg As Outlook.MailItem 'Object
Dim objAttachments As Outlook.Attachments
Dim objSelection As Outlook.Selection
Dim i As Long
Dim lngCount As Long
Dim strFile As String
Dim strFolderpath As String
Dim strDeletedFiles As String

    ' Get the path to your My Documents folder
    strFolderpath = CreateObject("WScript.Shell").SpecialFolders(16)
    On Error Resume Next

    ' Instantiate an Outlook Application object.
    Set objOL = CreateObject("Outlook.Application")

    ' Get the collection of selected objects.
    Set objSelection = objOL.ActiveExplorer.Selection

' The attachment folder needs to exist
' You can change this to another folder name of your choice

    ' Set the Attachment folder.
    strFolderpath = strFolderpath & "\OLAttachments\"

    ' Check each selected item for attachments. 
    For Each objMsg In objSelection

    Set objAttachments = objMsg.Attachments
    lngCount = objAttachments.Count

    If lngCount > 0 Then

    ' Use a count down loop for removing items
    ' from a collection. Otherwise, the loop counter gets
    ' confused and only every other item is removed.

    For i = lngCount To 1 Step -1

    ' Get the file name.
    strFile = objAttachments.Item(i).FileName

    ' Combine with the path to the Temp folder.
    strFile = strFolderpath & strFile

    ' Save the attachment as a file.
    objAttachments.Item(i).SaveAsFile strFile

    Next i
    End If

    Next

ExitSub:

Set objAttachments = Nothing
Set objMsg = Nothing
Set objSelection = Nothing
Set objOL = Nothing
End Sub

そして、プログラムしたくない場合: Outlookの添付ファイル管理ツール

3
Leptonator

分割されたRARファイルを30通のメールで送ってよかったと思った人からの電子メールで爆撃された後、私は正常に使用しました Microsoftによって公開されたこのVBAスクリプト と呼ばれましたmAttachmentSaver

まず、 スクリプトを含むアーカイブをダウンロード する必要があります。

マクロを有効にすることが重要です。 Outlook 2010では、[ファイル]"[オプション]"[セキュリティセンター]"[セキュリティセンターの設定]"[マクロの設定]"[すべてのマクロを有効にする]"[OK]"[OK]に移動します。 。次に、Outlookを再起動する必要があります。以前のバージョンでは、Tools"Macro"Security…にあります。

次に、TechCenterの記事で説明されている手順に従います。

  • 押す Alt+F11 OutlookでVBEを開きます。

  • mAttachmentSaver.basファイルをProject Explorer(Press Ctrl+R 表示されない場合)またはFile >> Import File ...Ctrl+M)。

    ExecuteSavingマクロを実行して、添付ファイルを保存します。

  • Outlook UIに戻り、次に Alt+F8 マクロウィンドウを開きます。

  • 名前リストでExecuteSavingを選択し、Runボタンをクリックします(このマクロを実行する前に、必ずOutlookアイテムを選択してください)。

  • [フォルダの参照]ダイアログボックスから添付ファイルを保存する特定のフォルダを選択し、[〜#〜]をクリックしますok [〜#〜]ボタン。

0
slhck