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

Làm cách nào để in tất cả các tệp đính kèm trong một / nhiều email trong Outlook?

Như bạn đã biết, nó sẽ chỉ in nội dung email như tiêu đề, nội dung khi bạn nhấp vào Tập tin > In trong Microsoft Outlook, nhưng không in phần đính kèm. Sau đây, chúng tôi sẽ chỉ cho bạn cách in tất cả các tệp đính kèm trong một email đã chọn một cách dễ dàng trong Microsoft Outlook.


In tất cả các tệp đính kèm trong từng email một

Microsoft Outlook cung cấp cho chúng tôi In nhanh tính năng này có thể giúp bạn in từng tệp đính kèm trong một email.

1. Chọn thư email có tệp đính kèm mà bạn sẽ in sau này.

2. Nhấp vào một tệp đính kèm trong email này.

3. Nhấn vào In nhanh nút trong Hoạt động nhóm trên File đính kèm tab.

Lưu ý: Công cụ đính kèm sẽ không được kích hoạt cho đến khi bạn nhấp vào tệp đính kèm trong email.

4. Hộp thoại Mở Đính kèm Thư xuất hiện và vui lòng nhấp vào Mở .

Xin lưu ý rằng bước này sẽ mở tệp đính kèm đã chọn và in tệp đính kèm đã chọn này cùng một lúc.

Để in các tệp đính kèm khác trong email này, vui lòng lặp lại Bước 2 đến Bước 4.

Nhanh chóng lưu / xuất tất cả các tệp đính kèm từ nhiều email trong Outlook

Thông thường, chúng tôi có thể lưu tệp đính kèm từ một email bằng cách kích hoạt Công cụ đính kèm và áp dụng Lưu tất cả các tệp đính kèm tính năng trong Outlook. Nhưng, điều gì sẽ xảy ra nếu lưu tệp đính kèm từ nhiều email hoặc từ toàn bộ thư mục thư trong Outlook? Dùng thử Kutools cho Outlook's Lưu tất cả (Phần đính kèm) tính năng.


lưu tệp đính kèm trong nhiều email kto9

In hàng loạt tất cả các tệp đính kèm trong một email

Nếu có nhiều tệp đính kèm trong một email, việc in từng tệp một sẽ rất tốn thời gian. Và phương pháp sau đây sẽ hướng dẫn bạn in hàng loạt tất cả các tệp đính kèm trong một email đã chọn một cách dễ dàng.

1. Chọn thư email có tệp đính kèm mà bạn sẽ in sau này.

2. Trong phiên bản Outlook 2010 trở lên, vui lòng nhấp vào Tập tin > In > Tùy chọn in. Xem ảnh chụp màn hình sau:

3. Trong hộp thoại In, vui lòng kiểm tra In các tập tin đính kèm. Tệp đính kèm sẽ chỉ in ra máy in mặc định tùy chọn trong Tùy chọn in phần.

4. Nhấn vào In .

5. Trong hộp thoại Mở Tệp đính kèm Thư hiện ra, vui lòng nhấp vào Mở để tiếp tục. (Chú thích: Hộp thoại này sẽ bật ra cho từng tệp đính kèm riêng biệt.)

Bây giờ tất cả các tệp đính kèm trong thông báo email đã chọn này sẽ được in cùng một lúc.


In hàng loạt tất cả các tệp đính kèm và hình ảnh trong nhiều email đã chọn

Để in tất cả các tệp đính kèm trong nhiều email cũng như tất cả ảnh trong nội dung thư trong Outlook, vui lòng làm theo các bước dưới đây để áp dụng mã VBA.

1. Trong danh sách gửi thư, vui lòng giữ Ctrl or sự thay đổi để chọn nhiều email có tệp đính kèm mà bạn sẽ in.

2. nhấn Khác + F11 các phím với nhau để mở cửa sổ Microsoft Visual Basic for Applications.

3. Trong cửa sổ Microsoft Visual Basic for Applications, bấm CÔNG CỤ > dự án. Và sau đó kiểm tra Thời gian chạy tập lệnh của Microsoft tùy chọn như hình dưới đây. Sau khi hoàn tất, hãy nhấp vào OK.

4. Nhấp chuột Chèn > Mô-đun, rồi dán mã VBA bên dưới vào cửa sổ mô-đun mới.

VBA: In tất cả các tệp đính kèm trong nhiều email 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. nhấn F5 phím hoặc nhấp vào chạy để chạy mã VBA này. Bây giờ bạn sẽ thấy rằng tất cả các tệp đính kèm trong các email đã chọn và ảnh trong phần thân meesage đều được in ra.

LƯU Ý

  • Mỗi hình ảnh sẽ xuất hiện một hộp thoại bật lên để yêu cầu bạn xác nhận việc in. Trong khi các loại tập tin khác sẽ được in trực tiếp.
  • Nếu có hình ảnh trong chữ ký email, chúng cũng sẽ hiển thị hộp thoại bật lên.
  • Nếu bạn nhận được Các macro trong dự án này đã bị vô hiệu hóa lỗi, vui lòng kiểm tra hướng dẫn này: Làm thế nào để kích hoạt và vô hiệu hóa Macro trong Outlook?

In hàng loạt tất cả các tệp đính kèm trong nhiều email đã chọn ngoại trừ ảnh trong nội dung

Để chỉ in tệp đính kèm trong nhiều email trừ ảnh trong nội dung thư trong Outlook, vui lòng làm theo các bước dưới đây để áp dụng mã VBA.

1. Trong danh sách gửi thư, vui lòng giữ Ctrl or sự thay đổi để chọn nhiều email có tệp đính kèm mà bạn sẽ in.

2. nhấn Khác + F11 các phím với nhau để mở cửa sổ Microsoft Visual Basic for Applications.

3. Trong cửa sổ Microsoft Visual Basic for Applications, bấm CÔNG CỤ > dự án. Và sau đó kiểm tra Thời gian chạy tập lệnh của Microsoft tùy chọn như hình dưới đây. Sau khi hoàn tất, hãy nhấp vào OK.

4. Nhấp chuột Chèn > Mô-đun, rồi dán mã VBA bên dưới vào cửa sổ mô-đun mới.

VBA: In tất cả các tệp đính kèm trong nhiều email 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. nhấn F5 phím hoặc nhấp vào chạy để chạy mã VBA này. Bây giờ bạn sẽ thấy rằng tất cả các tệp đính kèm trong các email đã chọn đã được in ra.

LƯU Ý

  • Mỗi hình ảnh đính kèm sẽ xuất hiện một hộp thoại bật lên để yêu cầu bạn xác nhận việc in. Trong khi các loại tập tin khác sẽ được in trực tiếp.
  • Hình ảnh trong nội dung thư sẽ không được in.
  • Nếu bạn nhận được Các macro trong dự án này đã bị vô hiệu hóa lỗi, vui lòng kiểm tra hướng dẫn này: Làm thế nào để kích hoạt và vô hiệu hóa Macro trong Outlook?

 


Demo: in một hoặc tất cả các tệp đính kèm trong email Outlook


Mẹo: Trong Video này, Kutools tab được thêm bởi Kutools cho Outlook. Nếu bạn cần nó, xin vui lòng bấm vào ở đây để có 60 ngày dùng thử miễn phí không giới hạn!


Kutools cho Outlook - Cung cấp 100 Tính năng Nâng cao cho Outlook và Làm cho Công việc Dễ dàng hơn Nhiều!

  • Auto CC / BCC bởi các quy tắc khi gửi email; Tự động chuyển tiếp Nhiều Email theo tùy chỉnh; Tự động trả lời không có máy chủ trao đổi và các tính năng tự động khác ...
  • Cảnh báo BCC - hiển thị tin nhắn khi bạn cố gắng trả lời tất cả nếu địa chỉ thư của bạn có trong danh sách BCC; Nhắc nhở khi thiếu tệp đính kèmvà các tính năng nhắc nhở khác ...
  • Trả lời (Tất cả) Với Tất cả Tệp đính kèm trong cuộc trò chuyện qua thư; Trả lời nhiều email trong vài giây; Tự động thêm lời chào khi trả lời; Thêm Ngày vào chủ đề ...
  • Công cụ Tệp đính kèm: Quản lý Tất cả Tệp đính kèm trong Tất cả Thư, Tự động tách, Nén tất cả, Đổi tên tất cả, Lưu tất cả ... Báo cáo nhanh, Đếm thư đã chọnhữu ích. Cảm ơn !
  • Email rác mạnh mẽ Theo phong tục; Xóa thư và liên hệ trùng lặphữu ích. Cảm ơn ! Cho phép bạn làm việc thông minh hơn, nhanh hơn và tốt hơn trong Outlook.
shot kutools triển vọng tab kutools 1180x121
shot kutools triển vọng kutools plus tab 1180x121
 
Nhận xét (23)
Xếp hạng 5 trong 5 · xếp hạng 1
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Điều này rất hữu ích, nhưng không giúp tôi với Office 365 ??
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Tôi có thể tự mình tìm ra phần này - điều tôi đang cố gắng tìm ra là tại sao, mặc dù đã làm như vậy, nhưng các tệp đính kèm lại không in được. Một thông báo lỗi bật lên cho mỗi tệp đính kèm hỏi tôi muốn "mở" hay "lưu". Chọn một trong hai tùy chọn sẽ tạo ra chính xác những kết quả đó - nói cách khác, vẫn không có bản in, chỉ là mở hoặc lưu. Tôi có 20 tệp đính kèm từ 4 email. Tôi thực sự không muốn phải mở 80 tài liệu chỉ để có thể in chúng. Rõ ràng có một số cài đặt bảo mật "cứu tôi khỏi chính tôi" cần được xóa để tôi có thể sử dụng máy tính của chính mình và hệ điều hành mà tôi đã mua và trả phí. ĐÓ là những gì tôi cần biết.
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Nhấp đúp vào email để tự "bật ra". Nhấp chuột phải vào một trong các tệp đính kèm và nhấp vào "chọn tất cả", sau đó "in nhanh".
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Đồng ý với Leah, điều này không hiệu quả. Nó chỉ in ra phần chính của email và phần đính kèm đầu tiên, không phải tất cả chúng. Cần hướng dẫn về cách in tất cả bằng cách sử dụng tùy chọn "chọn tất cả" được hiển thị ở trên.
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
nếu bạn muốn in tất cả các tệp đính kèm cùng nhau trong 1 email, đây là những gì bạn làm. trước tiên hãy tạo một thư mục trên màn hình của bạn .... Tôi đặt tên là "print". vào email có tệp đính kèm .... đánh dấu tất cả tệp đính kèm, nhấp chuột phải, lưu tất cả tệp đính kèm vào thư mục in. Mở thư mục in ..... đánh dấu tất cả chúng ..... nhấp chuột phải vào ..... in.



bây giờ giá như tôi có thể tìm ra cách in tất cả các tệp đính kèm trong 200 email mà không cần mở từng tệp và in nó.
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Tính năng Tách Tất cả (Tệp đính kèm) của Kutools cho Outlook có thể giúp bạn tải xuống tất cả các tệp đính kèm từ nhiều email với vài cú nhấp chuột! https://www.extendoffice.com/product/kutools-for-outlook/outlook-detach-attachments.html
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
nếu một pdf có cùng tên, macro chỉ in một pdf, làm cách nào để tôi có thể thay đổi mã để sửa đổi tên pdf?
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
mã VBA cung cấp cú pháp là lỗi
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
trên dòng 9, việc loại bỏ "Khi tiếp tục xảy ra lỗi" phù hợp với tôi.
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
vâng, điều này cũng làm việc cho tôi. Cảm ơn bạn!
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Cảm ơn bạn 
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Xin chào, tôi đã sử dụng phím tắt này được vài tuần nay, in tất cả các tệp đính kèm từ nhiều email cùng một lúc và gần đây tôi đã phải xóa dòng 9 như Nilanka đã nói, dòng này đã hoạt động, nhưng cách này không còn hoạt động nữa. Tôi nhận được hộp cảnh báo cho biết các macro trong dự án này bị vô hiệu hóa ..... và v.v. ... nếu ai đó có giải pháp để làm cho công việc này hoạt động như trước đây, vui lòng lmk, vì tôi đang chọn khoảng 60 tất cả các email có chứa tệp đính kèm để in. Thanks
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Xin chào tất cả mọi người, chúng tôi đã cập nhật mã VBA trong hướng dẫn vào 2022/08/03. Nếu bạn vẫn cần in tất cả các tệp đính kèm, vui lòng kiểm tra mã mới. 😊
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Xin chào, điều này đã hoạt động tốt với tôi ngày hôm qua nhưng bây giờ nó thông báo 'các macro trong dự án này đã bị vô hiệu hóa' Bất kỳ lời khuyên nào về cách kích hoạt chúng? 
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Vielen, vielen Dank dafür! Hat uns enorm viel Arbeit erspart.Auch ich musste - wie bereits in den Kommentaren geschrieben - die neunte Zeile "Dim xAttachment As Outlook.Attachment On Error Resume Next" entfernen, dann lief der Code einfandfrei durch.
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
xin chào, ich möchte nur den Anhang der Mails von der angegebenen Adresse senden, wie kann ich das machen, danke
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Tôi đang sử dụng Microsoft 365 và điều này đã hoạt động sau khi xóa dòng 9. Cảm ơn! Điều này đã tiết kiệm một chút thời gian cho tôi.
Xếp hạng 5 trong 5
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Dear all,

Tôi đã thử VBA và mã chạy nhưng nhiều cửa sổ bật lên đang mở trên màn hình để in hình ảnh từ chữ ký thư (rõ ràng đây được coi là tệp đính kèm). Bất cứ ai biết làm thế nào để giải quyết nó?

S.
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Chào bạn,

Xin lỗi rằng việc in hình ảnh sẽ hiển thị cửa sổ bật lên. Bạn sẽ phải xác nhận từng thứ để tải xuống tất cả các hình ảnh. Nếu bạn không cần in ảnh, vui lòng nhấp vào Hủy.

Amanda
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Nếu bạn không muốn in hình ảnh trong nội dung thư, vui lòng sử dụng mã bên dưới:
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
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Amanda thân mến,

Cảm ơn bạn vì mật mã. Nó đã làm việc!

S.
Không có bình luận nào được đăng ở đây
Để lại ý kiến ​​của bạn
Đăng với tư cách khách
×
Đánh giá bài viết này:
0   Nhân vật
Các vị trí được đề xuất

Kết nối với chúng tôi

Bản quyền © 2009 - www.extendoffice.com. | Đã đăng ký Bản quyền. cung cấp bởi ExtendOffice. | BẢN ĐỒ CHI NHÁNH
Microsoft và logo Office là các nhãn hiệu hoặc nhãn hiệu đã đăng ký của Microsoft Corporation tại Hoa Kỳ và / hoặc các quốc gia khác.
Được bảo vệ bởi Sectigo SSL