Автоматизуйте друк понад 10 000 електронних листів та їх вкладень, включаючи вміст ZIP-файлів


10

З якихось нечесних причин мене вимагають надрукувати 10 500 електронних листів та їх вкладень (які супроводжують близько 70% електронних листів) через Outlook 2010 . Я, як і ви, обурений такою смішною неефективністю, і 55000 аркушів паперу, які ми оцінили, це обійдеться нам і світові. Тим не менш, це станеться або вручну (що ми робимо останні два дні), або автоматично (будь ласка, допоможе нам Бог).

Їх потрібно замовити таким чином, щоб кожен електронний лист знаходився над відповідним вкладеним файлом і був надрукований хронологічно. Отже, надішліть електронну пошту 1, додаток 1, електронну пошту 2, додаток 2 і т.д.

Ось що я спробував поки що:

  1. У програмі Outlook "Параметри" -> "Параметри друку" -> Виберіть Друк із додатками

  2. Перетворення всієї пошти у .eml-файл та друк із папки

  3. Використання додатка для пошти третьої сторони (від Sperrysoftware) для перетворення всіх електронних листів у pdfs та експортування в папку. Створення цієї папки та упорядкування її за датою та роздрукування файлів pdfs.

Ось чому досі жоден з них не працював:

  1. Налаштування «Друк із додатками» Outlook рідко працює для документів із макросами. Перш за все, він не працює з поштовими файлами, а просто передає їх.

  2. Очевидно, що .eml файли не можуть бути безпосередньо надруковані чи прочитані поза поштовим клієнтом. Насправді я думаю, що це все-таки наше найперспективніше зусилля, оскільки це справді весь поштовий файл, представлений у стабільному форматі, розділений та за межами поштового клієнта - це означає, що вони є працездатними. Я, здається, не можу знайти сторонне програмне забезпечення, яке б дозволило мені конвертувати електронні листи та їхні стиснуті та різного форматування вкладення у файли для друку. Якщо ви знаєте про це, ми також готові витратити понад 200 євро на програмне забезпечення.

  3. Це програмне забезпечення спочатку було багатообіцяючим. Але макрос часто працює, і він також розпізнає підписи електронної пошти нашої компанії як вкладення.

Якщо ви можете взагалі запропонувати будь-яку пораду, це буде нам дуже корисно. Наразі ми відкриваємо кожну електронну пошту, її 3–4 додатки та друкуємо їх через відповідний діалог друку кожного вкладеного файлу. Це займе п’ять із нас на місяць, тож ваш внесок буде високо оцінений!


4
Я не бачу, як це питання щодо рекомендації щодо продукту. Хоча це запитання може вимагати рекомендувати програмне забезпечення , воно вказує проблему, яку потрібно вирішити, і не вимагає конкретного програмного забезпечення.
bwDraco

2
У будь-якому випадку ваше запитання побудовано таким чином, щоб уникнути запитів рекомендацій щодо програмного забезпечення - і це добре, оскільки питання щодо рекомендацій щодо програмного забезпечення є без темою для більшості сайтів у мережі Stack Exchange. Додаткову інформацію див. У довідковому центрі .
bwDraco

2
Я б схильний перемістити всі електронні листи у формат Maildir, а потім пройти сценарій кожного з них та надрукувати електронну пошту та вкладення. Ви можете змусити когось на позаштатному сайті вибити щось на 200EUR
Пол,

1
Деталі. Чому це потрібно?
ewwhite

1
Чи є причина, що тут ніхто не думає, що VBA може цього досягти? Ці листи на вашому обмінному сервері?
Райстафаріан

Відповіді:


3

MsgExtract може пакетно друкувати повідомлення електронної пошти з різних джерел електронної пошти, а також конвертувати формати електронної пошти.

  1. Він може друкувати електронні листи та додатки до них у хронологічному порядку. Ми додали до останнього побудови можливість розкручувати та друкувати вкладені файли відповідно до ваших вимог.
  2. Він може зберігати електронну пошту Outlook у вигляді файлів EML
  3. Він може зберігати електронну пошту Outlook як PDF-файли
  4. Він може завантажувати зображення, пов’язані в html-частині повідомлення, і включати їх у отриманому форматі (PDF-файли, принтер ...)

Для друку вкладених файлів MsgExtract спирається на асоціації друку Windows Shell, якщо асоціації для розширення файлу вкладень не існує, він пропускається.

Дізнатися більше про пакетну друк MsgExtract можна на:

http://docs.maildev.com/article/122-how-do-i-batch-print-email-messages-and-its-attachments

(Відмова, я автор MsgExtract)


1
Хоча ваші відповіді були актуальними, більшість або всі вони мають рекламний характер. Це може призвести до призупинення вашого облікового запису . Якщо ви хочете рекламувати власну продукцію, будь ласка, подумайте про придбання реклами на Stack Exchange . Дивіться також довідковий центр та meta.superuser.com/questions/2352/recommending-own-products
bwDraco

3
Я намагався бути корисним, надаючи відповідну відповідь. Продукт, безумовно, може допомогти користувачеві4167750 вирішити його завдання з друку, я не знаю жодного іншого існуючого варіанту, крім спеціального програмування, як хтось запропонував. Чи повинен я утриматися від публікації, знаючи, що у мене є відповідне рішення? У будь-якому випадку я зараз прочитав розділ самореклами в FAQ та зрозумів, що ви намагаєтесь уникати спаму для підтримки якості сайту.
jponce

@jponce, я дуже ціную вашу відповідь тут. Схоже, це справді може вирішити нашу проблему. Ми дійсно можемо отримати всі електронні листи у файл .eml. Однак буде ще дві (я вважаю, незначні) проблеми. Якщо у вас є якісь дані про них, це ще більше прискорить процес. 1) Наші підписи фігурують як додатки. Ми завантажили оригінальні електронні листи з Lotus Notes, що спричинило це після їх імпорту в Outlook. 2) Багато наших файлів Excel складають +15 аркушів. У нас є спеціальний параметр друку для них - чи зможу я застосувати цей параметр друку до всіх xls?
користувач4167750

@ user4167750, про проблеми, про які ви згадуєте: 1) ми реалізували фільтр додатків, який може видаляти та фільтрувати вкладені файли за назвою файлу. Якщо вкладені вами підписи мають відповідні імена в усіх повідомленнях, це може вирішити проблему. 2) Я не впевнений, чи налаштування друку Excel зберігаються. Для друку ми використовуємо розширення файлу вкладеного файлу для пошуку об’єднання оболонки Windows, а потім запускаємо його, передаючи ім'я файлу вкладення як параметр.
jponce

0

У мене немає прогнозів на цій машині, і я не матиму доступу до машини Windows з перспективою до наступного тижня. Але в основному ви хочете зробити щось подібне:

Sub test()
Dim oFolder As outlook.folder
Dim oAttachment As outlook.attachment
Dim oMailItem As outlook.mailitem
Dim oItem As Object

set oFolder = 'get the folder you want to print from

Dim i As Integer
Dim j As Integer

For i = 1 To oFolder.items.Count
    Set oMailItem = oFolder.items(i)
    oMailItem.PrintOut

    If oMailItem.attachments.Count > 0 Then
        For j = 1 To oMailItem.Attachments.Count
              'below you might need to change the attachment(j) to items(j)
            Set oAttachment = oMailItem.attachment(j)
            oAttachment.PrintOut
        Next
    End If

Next

End Sub

Тож він проходить через папку, шукаючи електронні листи, роздруковує їх і перевіряє їх на вкладення і, якщо вони знайдені, також друкує їх.

Як я вже сказав, у мене немає світогляду, тому я не можу це перевірити.

Не продовжуйте живі дані!

Якби я був ти, я поставив би як три COPIED електронні листи у нову папку і перевіряю це на них, перш ніж торкатися будь-яких живих даних. Можливо, вам доведеться шукати, як це зробитиset oFolder


Я дуже ціную ваш час на це. Я знайшов подібний до цього код, але він, як правило, переглядати поштові файли (які принаймні 50% наших вкладених файлів). Я думаю, що VBA, можливо, доведеться піти на крок далі і викликати C ++ в якийсь момент, щоб отримати доступ до агента вилучення поштового індексу. Крім того, я думаю, що WinZip може бути занадто громіздким екстрактом. Я б сказав, які з них, на мою думку, можуть працювати для цього, але я думаю, що модератор вже чутливий до програмних рекламних аспектів цієї публікації.
користувач4167750

Чи все-таки пропускає .zip файли? Можливо, це загальносистемне налаштування або аргумент, який можна передавати winzip через vba. Чи виходить помилка коду чи він просто не друкує .zip?
Райстафаріан

Так, я думаю, ти маєш рацію, що це може бути передано winzip, але я не впевнений, чи можна це зробити через VBA. Я думаю, що проблема полягає в тому, що як тільки файл вкладеного файлу (тобто zip-файл у цьому випадку) відкриється, це сценарій VBA Outlook є зовнішнім чи поза межами області. Я з цим продовжуватиму грати. Так, вихідні працюють!
користувач4167750
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.