Note: The other languages of the website are Google-translated. Back to English

Як надрукувати всі вкладення в одному / декількох електронних листах в Outlook?

Як відомо, при друку вмісту електронної пошти, такого як заголовок, тіло, буде надруковано лише при натисканні філе > друк у Microsoft Outlook, але не друкувати вкладення. Тут ми покажемо вам, як легко роздрукувати всі вкладення у вибраному електронному листі в Microsoft Outlook.


Роздрукуйте всі вкладення в одному повідомленні електронної пошти по одному

Microsoft Outlook надає нам Швидкий друк функція, яка може допомогти вам роздрукувати вкладення в електронному повідомленні по одному.

1. Виберіть повідомлення електронної пошти, вкладення якого ви надрукуєте пізніше.

2. Клацніть одне вкладення в цьому електронному листі.

3. Натисніть Швидкий друк кнопка в Дії група на Attachments Вкладка.

Примітка: Інструменти кріплення не буде активовано, доки ви не клацнете вкладення в електронних листах.

4. З’явиться діалогове вікно «Відкрити вкладення до електронної пошти», і натисніть відкритий кнопки.

Зверніть увагу, що цей крок відкриє вибране вкладення та одночасно роздрукує цей вибраний вкладення.

Щоб надрукувати інші вкладення у цьому електронному листі, повторіть кроки 2 - 4.

Швидко зберігайте / експортуйте всі вкладення з декількох електронних листів в Outlook

Зазвичай ми можемо зберігати вкладення з одного електронного листа з активацією Інструменти кріплення і застосовуючи Зберегти всі вкладення функція в Outlook. Але що робити, якщо зберегти вкладення з декількох електронних листів або з усієї папки пошти в Outlook? Спробуйте Kutools для Outlook Зберегти все Функція (вкладення).


зберегти вкладення в декількох електронних листах

Пакетний друк усіх вкладень в одному повідомленні електронної пошти

Якщо в одному повідомленні електронної пошти багато вкладень, роздрукувати їх одне за іншим займе багато часу. А наведений нижче метод допоможе вам легко надрукувати всі вкладення у вибраному електронному повідомленні.

1. Виберіть повідомлення електронної пошти, вкладення якого ви надрукуєте пізніше.

2. У програмі Outlook 2010 або пізнішої версії натисніть кнопку філе > друк > Параметри друку. Дивіться наступний знімок екрана:

3. У діалоговому вікні Друк поставте прапорець Роздрукувати прикріплені файли. Вкладення друкуються лише на принтері за замовчуванням опція в Параметри друку .

4. Натисніть друк кнопки.

5. У спливаючому діалоговому вікні Відкриття вкладення пошти натисніть кнопку відкритий кнопку, щоб продовжити. (примітки: Це діалогове вікно відкриється для кожного вкладення окремо.)

Тепер усі вкладення у вибраному електронному повідомленні будуть надруковані одночасно.


Пакетний друк усіх вкладень і зображень у кількох вибраних електронних листах

Щоб надрукувати всі вкладення в кількох електронних листах, а також усі зображення в тілі повідомлення в Outlook, виконайте наведені нижче дії, щоб застосувати код VBA.

1. У списку розсилки, утримуйте Ctrl or Shift клавіші для вибору декількох електронних листів, вкладення яких ви надрукуєте.

2. Прес інший + F11 клавіші разом, щоб відкрити вікно Microsoft Visual Basic for Applications.

3. У вікні Microsoft Visual Basic for Applications натисніть інструменти > посилання. А потім перевірте Виконання сценаріїв Microsoft варіант, як показано нижче. Після завершення натисніть OK.

4. Клацання Insert > Модулі, а потім вставте нижче коду VBA у нове вікно модуля.

VBA: Друк усіх вкладень у кількох електронних листах Outlook

Sub PrintAllAttachmentsInMultipleMails()
  'Update by ExtendOffice 2022/08/03
  Dim xShellApp As Object
  Dim xFSO As Scripting.FileSystemObject
  Dim xItem As Object
  Dim xTempFldPath, xFilePath As String
  Dim xSelItems As Outlook.Selection
  Dim xMailItem As Outlook.MailItem
  Dim xAttachments As Outlook.Attachments
  Dim xAttachment As Outlook.Attachment
  Dim xFile As File
  On Error Resume Next
  Set xFSO = New Scripting.FileSystemObject
  xTempFldPath = xFSO.GetSpecialFolder(2).Path & "\Attachments " & Format(Now, "yyyymmddhhmmss") 'xFSO.GetSpecialFolder(2) For saving temporary files
  If xFSO.FolderExists(xTemfldpath) = False Then 'create temporary folder
    xFSO.CreateFolder (xTempFldPath)
  End If
  Set xSelItems = Outlook.ActiveExplorer.Selection
  Set xShellApp = CreateObject("Shell.Application")
  For Each xItem In xSelItems
    If xItem.Class = OlObjectClass.olMail Then
      Set xMailItem = xItem
      Set xAttachments = xMailItem.Attachments
      For Each xAttachment In xAttachments
        xFilePath = xTempFldPath & "\" & xAttachment.FileName
        xAttachment.SaveAsFile (xFilePath)
      Next
    End If
  Next
  For Each xFile In xFSO.GetFolder(xTempFldPath).Files
    VBA.DoEvents
    Call xShellApp.ShellExecute(xFile.Path, "", "", "print", 0)
  Next
  Set xSelItems = Nothing
  Set xShellApp = Nothing
  Set xFSO = Nothing
End Sub

5. прес F5 або клацніть на прогін кнопку для запуску цього коду VBA. Тепер ви побачите, що всі вкладення у вибраних електронних листах і зображення в тілі meesage роздруковано.

Примітка:

  • Кожне зображення відкриє спливаюче діалогове вікно із запитом на підтвердження друку. У той час як інші типи файлів будуть надруковані безпосередньо.
  • Якщо в електронному підписі є зображення, вони також відображатимуть спливаючі діалогові вікна.
  • Якщо ти отримаєш Макроси в цьому проекті вимкнено помилка, перевірте цей посібник: Як увімкнути та вимкнути макроси в Outlook?

Пакетний друк усіх вкладень у кількох вибраних електронних листах, крім зображень у тілі

Щоб надрукувати лише вкладення в кількох електронних листах, крім зображень у тілі повідомлення в Outlook, виконайте наведені нижче дії, щоб застосувати код VBA.

1. У списку розсилки, утримуйте Ctrl or Shift клавіші для вибору декількох електронних листів, вкладення яких ви надрукуєте.

2. Прес інший + F11 клавіші разом, щоб відкрити вікно Microsoft Visual Basic for Applications.

3. У вікні Microsoft Visual Basic for Applications натисніть інструменти > посилання. А потім перевірте Виконання сценаріїв Microsoft варіант, як показано нижче. Після завершення натисніть OK.

4. Клацання Insert > Модулі, а потім вставте нижче коду VBA у нове вікно модуля.

VBA: Друк усіх вкладень у кількох електронних листах Outlook

Sub PrintAllAttachmentsInMultipleMails()
  'Update by ExtendOffice 2022/08/05
  Dim xShellApp As Object
  Dim xFSO As Scripting.FileSystemObject
  Dim xItem As Object
  Dim xTempFldPath, xFilePath As String
  Dim xSelItems As Outlook.Selection
  Dim xMailItem As Outlook.MailItem
  Dim xAttachments As Outlook.Attachments
  Dim xAttachment As Outlook.Attachment
  Dim xFile As File
  On Error Resume Next
  Set xFSO = New Scripting.FileSystemObject
  xTempFldPath = xFSO.GetSpecialFolder(2).Path & "\Attachments " & Format(Now, "yyyymmddhhmmss") 'xFSO.GetSpecialFolder(2) For saving temporary files
  If xFSO.FolderExists(xTemfldpath) = False Then 'create temporary folder
    xFSO.CreateFolder (xTempFldPath)
  End If
  Set xSelItems = Outlook.ActiveExplorer.Selection
  Set xShellApp = CreateObject("Shell.Application")
  For Each xItem In xSelItems
    If xItem.Class = OlObjectClass.olMail Then
      Set xMailItem = xItem
      Set xAttachments = xMailItem.Attachments
      For Each xAttachment In xAttachments
        If IsEmbeddedAttachment(xAttachment) = False Then
          xFilePath = xTempFldPath & "\" & xAttachment.FileName
          xAttachment.SaveAsFile (xFilePath)
          Debug.Print xFilePath
        End If
      Next
    End If
  Next
  For Each xFile In xFSO.GetFolder(xTempFldPath).Files
    VBA.DoEvents
    Call xShellApp.ShellExecute(xFile.Path, "", "", "print", 0)
  Next
  Set xSelItems = Nothing
  Set xShellApp = Nothing
  Set xFSO = Nothing
End Sub

Function IsEmbeddedAttachment(Attach As Attachment)
Dim xItem As MailItem
Dim xCid As String
Dim xID As String
Dim xHtml As String
On Error Resume Next
IsEmbeddedAttachment = False
Set xItem = Attach.Parent
If xItem.BodyFormat <> olFormatHTML Then Exit Function
xCid = ""
xCid = Attach.PropertyAccessor.GetProperty("http://schemas.microsoft.com/mapi/proptag/0x3712001F")
If xCid <> "" Then
    xHtml = xItem.HTMLBody
    xID = "cid:" & xCid
    If InStr(xHtml, xID) > 0 Then
        IsEmbeddedAttachment = True
    End If
End If
End Function

5. прес F5 або клацніть на прогін кнопку для запуску цього коду VBA. Тепер ви побачите, що всі вкладення у вибраних електронних листах роздруковано.

Примітка:

  • Кожне прикріплене зображення відкриє спливаюче діалогове вікно із запитом на підтвердження друку. У той час як інші типи файлів будуть надруковані безпосередньо.
  • Зображення в тілі повідомлення не будуть надруковані.
  • Якщо ти отримаєш Макроси в цьому проекті вимкнено помилка, перевірте цей посібник: Як увімкнути та вимкнути макроси в Outlook?

 


Демонстрація: надрукуйте одне або всі вкладення в електронній пошті Outlook


Чайові: У цьому відео, Кутулс вкладку додає Kutools для Outlook. Якщо вам це потрібно, натисніть тут мати 60-денну безкоштовну пробну версію без обмежень!


Kutools для Outlook - приносить 100 розширених функцій для Outlook і значно полегшує роботу!

  • Авто CC / BCC за правилами при відправці електронної пошти; Автоматичне пересилання вперед Кілька електронних листів на замовлення; Автовідповідь без сервера обміну та більше автоматичних функцій ...
  • Попередження BCC - показати повідомлення при спробі відповісти всім якщо ваша поштова адреса є у списку BCC; Нагадати про відсутність вкладеньта інші функції нагадування ...
  • Відповісти (Усі) з усіма вкладеннями в поштовій розмові; Відповісти на багато електронних листів за секунди; Автоматично додавати привітання при відповіді; Додати дату в тему ...
  • Інструменти вкладення: Керування всіма вкладеннями у всіх листах, Автоматичне від'єднання, Стиснути все, Перейменувати все, Зберегти все ... Швидкий звіт, Підрахувати вибрані листи...
  • Потужні небажані електронні листи за звичаєм; Видаліть повторювані листи та контакти... Дозвольте вам робити розумніші, швидші та кращі в Outlook.
постріл kutools outlook kutools вкладка 1180x121
постріл kutools outlook kutools плюс вкладка 1180x121
 
Коментарі (23)
Оцінено 5 з 5 · рейтинги 1
Цей коментар був мінімізований модератором на сайті
Це дуже корисно, але мені не допомагає з Office 365??
Цей коментар був мінімізований модератором на сайті
Я міг би з’ясувати цю частину для себе – я намагаюся зрозуміти, чому, незважаючи на це, вкладені файли не друкуються. Для кожного вкладення з’являється повідомлення про помилку, яке запитує, чи хочу я «відкрити» чи «зберегти». Вибір будь-якого з варіантів дає саме такі результати - іншими словами, все ще не друкується, лише відкривається або зберігається. У мене є 20 вкладень із 4 електронних листів. Я справді не хочу відкривати 80 документів, щоб мати можливість їх роздрукувати. Очевидно, є деякі параметри безпеки «врятуй мене від себе», які потрібно видалити, щоб я міг використовувати свій власний комп’ютер і операційну систему, яку я придбав і заплатив. Це те, що мені потрібно знати.
Цей коментар був мінімізований модератором на сайті
Двічі клацніть по електронній пошті, щоб «вискочити» самостійно. Клацніть правою кнопкою миші на одному з вкладень і натисніть «Вибрати все», потім «Швидкий друк».
Цей коментар був мінімізований модератором на сайті
Погодьтеся з Лією, це не працює. Він просто друкує основну частину листа та перший вкладений файл, а не всі. Потрібні інструкції щодо того, як надрукувати їх усі за допомогою параметрів «вибрати всі», показаних вище.
Цей коментар був мінімізований модератором на сайті
якщо ви хочете надрукувати всі вкладені разом в 1 електронний лист, ось що ви робите. спочатку створіть папку на робочому столі... Я назвав свою "друк". перейдіть до електронної пошти з вкладеннями... виділіть усі вкладення, клацніть правою кнопкою миші, збережіть усі вкладення в папку друку. Відкрийте папку друку.....виділіть усі...клацніть правою кнопкою миші.....друк.



тепер, якби я міг зрозуміти, як роздрукувати всі вкладення в 200 електронних листах, не відкриваючи кожне з них і не друкуючи його.
Цей коментар був мінімізований модератором на сайті
Функція Kutools for Outlook «Від’єднати всі (вкладені файли)» може допомогти вам завантажити всі вкладення з кількох електронних листів за допомогою кількох кліків! https://www.extendoffice.com/product/kutools-for-outlook/outlook-detach-attachments.html
Цей коментар був мінімізований модератором на сайті
якщо PDF-файл має те саме ім'я, макрос друкує лише один PDF-файл, як я можу змінити код, щоб змінити ім'я pdf?
Цей коментар був мінімізований модератором на сайті
код VBA дає синтаксис помилки
Цей коментар був мінімізований модератором на сайті
у рядку 9 видалення «При помилці продовжити далі» спрацювало для мене.
Цей коментар був мінімізований модератором на сайті
так, це також спрацювало для мене. Дякую!
Цей коментар був мінімізований модератором на сайті
Дякую 
Цей коментар був мінімізований модератором на сайті
Привіт, я використовую цей ярлик вже кілька тижнів, друкуючи всі вкладення з кількох листів одночасно, і нещодавно мені довелося видалити рядок 9, як сказала Ніланка, який працює, але це більше не працює. Я отримую вікно попередження про те, що макроси в цьому проекті вимкнені.....і так далі... якщо хтось має рішення, щоб зробити цю роботу так, як це було раніше, будь ласка, lmk, оскільки я вибираю близько 60 електронні листи, які містять вкладення для друку. Спасибі
Цей коментар був мінімізований модератором на сайті
Цей коментар був мінімізований модератором на сайті
Привіт усім! Ми ​​оновили код VBA у підручнику 2022/08/03. Якщо вам все одно потрібно надрукувати всі вкладення, перевірте новий код. 😊
Цей коментар був мінімізований модератором на сайті
Привіт, у мене вчора це спрацювало, але тепер написано "макроси в цьому проекті вимкнені". Будь-які поради, як їх увімкнути? 
Цей коментар був мінімізований модератором на сайті
Цей коментар був мінімізований модератором на сайті
Vielen, vielen Dank dafür! Hat uns enorm viel Arbeit erspart.Auch ich musste - wie bereits in den Commentaren geschrieben - die neunte Zeile "Dim xAttachment As Outlook. Attachment On Error Resume Next" entfernen, dann lief der Code einfandfrei durch.
Цей коментар був мінімізований модератором на сайті
hello, ich möchte nur den Anhang der Mails von der angegebenen Adresse senden, wie kann ich das machen, danke
Цей коментар був мінімізований модератором на сайті
Я використовую Microsoft 365, і це спрацювало після видалення рядка 9. Дякую! Це заощадило трохи часу для мене.
Цей коментар був мінімізований модератором на сайті
Шановні все,

Я спробував VBA, і код працює, але на екрані відкривається багато спливаючих вікон для друку зображень із підпису електронної пошти (очевидно, це вважається вкладенням). Хтось знає, як це вирішити?

S.
Цей коментар був мінімізований модератором на сайті
Привіт там,

Вибачте, але під час друку зображень з’являться спливаючі вікна. Вам потрібно буде підтвердити кожне, щоб завантажити всі зображення. Якщо вам не потрібно друкувати зображення, натисніть «Скасувати».

Аманда
Цей коментар був мінімізований модератором на сайті
Якщо ви не хочете друкувати зображення в тілі повідомлення, використовуйте код нижче:
Sub PrintAllAttachmentsInMultipleMails()
  'Update by ExtendOffice 2022/08/05
  Dim xShellApp As Object
  Dim xFSO As Scripting.FileSystemObject
  Dim xItem As Object
  Dim xTempFldPath, xFilePath As String
  Dim xSelItems As Outlook.Selection
  Dim xMailItem As Outlook.MailItem
  Dim xAttachments As Outlook.Attachments
  Dim xAttachment As Outlook.Attachment
  Dim xFile As File
  On Error Resume Next
  Set xFSO = New Scripting.FileSystemObject
  xTempFldPath = xFSO.GetSpecialFolder(2).Path & "\Attachments " & Format(Now, "yyyymmddhhmmss") 'xFSO.GetSpecialFolder(2) For saving temporary files
  If xFSO.FolderExists(xTemfldpath) = False Then 'create temporary folder
    xFSO.CreateFolder (xTempFldPath)
  End If
  Set xSelItems = Outlook.ActiveExplorer.Selection
  Set xShellApp = CreateObject("Shell.Application")
  For Each xItem In xSelItems
    If xItem.Class = OlObjectClass.olMail Then
      Set xMailItem = xItem
      Set xAttachments = xMailItem.Attachments
      For Each xAttachment In xAttachments
        If IsEmbeddedAttachment(xAttachment) = False Then
          xFilePath = xTempFldPath & "\" & xAttachment.FileName
          xAttachment.SaveAsFile (xFilePath)
          Debug.Print xFilePath
        End If
      Next
    End If
  Next
  For Each xFile In xFSO.GetFolder(xTempFldPath).Files
    VBA.DoEvents
    Call xShellApp.ShellExecute(xFile.Path, "", "", "print", 0)
  Next
  Set xSelItems = Nothing
  Set xShellApp = Nothing
  Set xFSO = Nothing
End Sub

Function IsEmbeddedAttachment(Attach As Attachment)
Dim xItem As MailItem
Dim xCid As String
Dim xID As String
Dim xHtml As String
On Error Resume Next
IsEmbeddedAttachment = False
Set xItem = Attach.Parent
If xItem.BodyFormat <> olFormatHTML Then Exit Function
xCid = ""
xCid = Attach.PropertyAccessor.GetProperty("http://schemas.microsoft.com/mapi/proptag/0x3712001F")
If xCid <> "" Then
    xHtml = xItem.HTMLBody
    xID = "cid:" & xCid
    If InStr(xHtml, xID) > 0 Then
        IsEmbeddedAttachment = True
    End If
End If
End Function
Цей коментар був мінімізований модератором на сайті
Шановна Аманда,

Дякую за код. Це спрацювало!

S.
There are no comments posted here yet
Залишайте свої коментарі
Публікація як гість
×
Оцініть цю публікацію:
0   Персонажі
Рекомендовані місця

Слідуй за нами

Copyright © 2009 - WWW.extendoffice.com. | Всі права захищені. На основі ExtendOffice. | Карта сайту
Microsoft та логотип Office є товарними знаками або зареєстрованими товарними знаками Microsoft Corporation у США та / або інших країнах.
Захищений Sectigo SSL