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

Làm cách nào để gửi email qua Outlook khi sổ làm việc được lưu trong Excel?

Bài viết này nói về cách gửi email qua Outlook khi một sổ làm việc cụ thể được lưu trong Excel. Hãy làm như hướng dẫn cho thấy.

Gửi email qua Outlook khi sổ làm việc được lưu bằng mã VBA


Gửi email qua Outlook khi sổ làm việc được lưu bằng mã VBA

Để gửi email qua Outlook khi sổ làm việc được lưu trong Excel, vui lòng thực hiện như sau.

1. Trước tiên, hãy lưu sổ làm việc dưới dạng Sổ làm việc Hỗ trợ Macro Excel. Nhấp chuột Tập tin > Save As. Trong Save As hộp thoại, chọn một thư mục để lưu sổ làm việc, đặt tên cho nó trong hộp Tên tệp, chọn Sổ làm việc hỗ trợ macro Excel từ Save as type danh sách thả xuống, sau đó bấm vào Lưu cái nút. Xem ảnh chụp màn hình:

2. Mở Sổ làm việc Hỗ trợ Macro Excel mà bạn đã lưu ngay bây giờ, bấm Khác + F11 các phím đồng thời để mở Microsoft Visual Basic cho các ứng dụng cửa sổ.

2. bên trong Microsoft Visual Basic cho các ứng dụng cửa sổ, vui lòng nhấp đúp Sổ làm việc này trong thanh bên trái, sau đó sao chép và dán mã VBA bên dưới vào Sổ làm việc này cửa sổ mã. Xem ảnh chụp màn hình:

Mã VBA: Gửi email khi sổ làm việc được lưu

Private Sub Workbook_AfterSave(ByVal Success As Boolean)
'Updated by Extendoffice 20181102
    Dim xOutApp As Object
    Dim xMailItem As Object
    Dim xName As String
    On Error Resume Next
    Set xOutApp = CreateObject("Outlook.Application")
    Set xMailItem = xOutApp.CreateItem(0)
    xName = ActiveWorkbook.FullName
    With xMailItem
        .To = "Email Address"
        .CC = ""
        .Subject = "The workbook has been saved"
        .Body = "Hi," & Chr(13) & Chr(13) & "File is now updated."
        .Attachments.Add xName
        .Display
       '.send
    End With
    Set xMailItem = Nothing
    Set xOutApp = Nothing
End Sub

Chú thích: Vui lòng thay thế Email với địa chỉ email người nhận trong dòng .To = "Địa chỉ Email"thay đổi các trường Cc, Chủ đề cũng như nội dung trong mã VBA khi bạn cần.

3. Nhấn nút Khác + Q các phím đồng thời để đóng Microsoft Visual Basic cho các ứng dụng cửa sổ.

Từ bây giờ, khi bạn cập nhật sổ làm việc và lưu nó, một email sẽ được tạo tự động có đính kèm sổ làm việc cập nhật. Vui lòng nhấp vào Gửi để gửi email. Xem ảnh chụp màn hình:

Chú thích: Mã VBA chỉ hoạt động khi bạn sử dụng Outlook làm chương trình email của mình.


Các bài liên quan:


Các công cụ năng suất văn phòng tốt nhất

Kutools cho Excel giải quyết hầu hết các vấn đề của bạn và tăng 80% năng suất của bạn

  • Tái sử dụng: Chèn nhanh công thức phức tạp, biểu đồ và bất cứ thứ gì bạn đã sử dụng trước đây; Mã hóa ô với mật khẩu; Tạo danh sách gửi thư và gửi email ...
  • Thanh siêu công thức (dễ dàng chỉnh sửa nhiều dòng văn bản và công thức); Bố cục đọc (dễ dàng đọc và chỉnh sửa số lượng ô lớn); Dán vào Dải ô đã Lọchữu ích. Cảm ơn !
  • Hợp nhất các ô / hàng / cột mà không làm mất dữ liệu; Nội dung phân chia ô; Kết hợp các hàng / cột trùng lặp... Ngăn chặn các ô trùng lặp; So sánh các dãyhữu ích. Cảm ơn !
  • Chọn trùng lặp hoặc duy nhất Hàng; Chọn hàng trống (tất cả các ô đều trống); Tìm siêu và Tìm mờ trong Nhiều Sổ làm việc; Chọn ngẫu nhiên ...
  • Bản sao chính xác Nhiều ô mà không thay đổi tham chiếu công thức; Tự động tạo tài liệu tham khảo sang Nhiều Trang tính; Chèn Bullets, Hộp kiểm và hơn thế nữa ...
  • Trích xuất văn bản, Thêm Văn bản, Xóa theo Vị trí, Xóa không gian; Tạo và In Tổng số phân trang; Chuyển đổi giữa nội dung ô và nhận xéthữu ích. Cảm ơn !
  • Siêu lọc (lưu và áp dụng các lược đồ lọc cho các trang tính khác); Sắp xếp nâng cao theo tháng / tuần / ngày, tần suất và hơn thế nữa; Bộ lọc đặc biệt bằng cách in đậm, in nghiêng ...
  • Kết hợp Workbook và WorkSheets; Hợp nhất các bảng dựa trên các cột chính; Chia dữ liệu thành nhiều trang tính; Chuyển đổi hàng loạt xls, xlsx và PDFhữu ích. Cảm ơn !
  • Hơn 300 tính năng mạnh mẽ. Hỗ trợ Office / Excel 2007-2021 và 365. Hỗ trợ tất cả các ngôn ngữ. Dễ dàng triển khai trong doanh nghiệp hoặc tổ chức của bạn. Đầy đủ tính năng Dùng thử miễn phí 30 ngày. Bảo đảm hoàn lại tiền trong 60 ngày.
tab kte 201905

Tab Office mang lại giao diện Tab cho Office và giúp công việc của bạn trở nên dễ dàng hơn nhiều

  • Cho phép chỉnh sửa và đọc theo thẻ trong Word, Excel, PowerPoint, Publisher, Access, Visio và Project.
  • Mở và tạo nhiều tài liệu trong các tab mới của cùng một cửa sổ, thay vì trong các cửa sổ mới.
  • Tăng 50% năng suất của bạn và giảm hàng trăm cú nhấp chuột cho bạn mỗi ngày!
officetab dưới cùng
Nhận xét (17)
Chưa có xếp hạng. Hãy là người đầu tiên xếp hạng!
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Cách tự động hóa thông báo email trong VBA dựa trên Phạm vi ngày, mà không cần phải xem cửa sổ bật lên cho phép bảo mật để cho phép VBA gửi email.
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Gracias. Consulta: useizando esta misma rutina, como podría enviar el Correo a un Correo específico dependiendo el valor de otra celda?
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Kính gửi tất cả các bạn, tôi muốn hỏi làm thế nào để đính kèm liên kết chức năng vào một thư mục nhất định trên máy chủ, nếu tôi dán liên kết, nó xuất hiện trong sổ làm việc giống như văn bản thuần túy và vì vậy nó không hoạt động trong e-mail đã nhận, làm thế nào tôi có thể biến nó thành liên kết, vì vậy những người nhận có thể nhấp vào nó?
Tôi muốn sử dụng cách này thay vì gửi tệp excel kèm theo.
Cảm ơn về lời khuyên
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Hi Robert,
Xin lỗi không thể giúp bạn với điều này, chào mừng bạn đăng bất kỳ câu hỏi nào về Excel lên diễn đàn của chúng tôi: https://www.extendoffice.com/forum.html. Bạn sẽ nhận được nhiều hỗ trợ Excel hơn từ chuyên gia của chúng tôi hoặc những người hâm mộ Excel khác.
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 đã đặt cái này trong phần nội dung của email và nó có tác dụng với tôi ...
"tệp: /// Z: \ dir1 \ dir2 \ dir3 \ Test1.xlsm"
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, bài viết hay! Một điều tôi đã cố gắng đạt được với điều này là đính kèm trạng thái hiện tại của sổ làm việc vào email.

Hiện tại, nó chỉ gửi trạng thái ban đầu của tệp và không bao gồm bất kỳ thay đổi nào mà người dùng sẽ thực hiện.

Bất kỳ ý tưởng về cách thực hiện điều này bằng cách sử dụng macro?
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 Chris,
Mã đã được cập nhật với sự cố đã được giải quyết, vui lòng thử. Cảm ơn bình luận của 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 Chris,

Tôi đã gặp vấn đề tương tự.
Hiện tại, các mã được sử dụng trong mô-đun "beforesave".
Có nghĩa là email sẽ gửi bảng tính đã được lưu trước đó.

Có một mô-đun khác "aftersave".
Tôi đã áp dụng mã trong mô-đun này và nó hoạt động như một sự quyến rũ.
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 sẽ được xử lý như thế nào đối với tài liệu Office 365. Nó đang tự động lưu.
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Có cách nào để mã hóa email tự động không?
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 Mike,
Xin lỗi không thể giúp đỡ để giải quyết vấn đề này. Cảm ơn bình luận của 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! Cảm ơn rất nhiều về hướng dẫn này :-) Tôi muốn làm điều gì đó nhiều hơn trong mã này - gửi email dựa trên các quốc gia. Nó có nghĩa là tôi phải tạo các lệnh với if và select. Đúng? Tôi đã xóa tệp đính kèm khỏi email. Thay vào đó, tôi muốn thêm liên kết với đường dẫn vào thư mục. Nhưng khi macro chạy, lệnh không hợp lệ :-(
Tôi đánh giá cao từng sự giúp đỡ làm thế nào để thêm nó vào đó.
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 - Làm cách nào để đưa dữ liệu di động vào trường "cc" của email?
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 Brent,
Giả sử bạn muốn bao gồm giá trị trong ô a7 trong trường "cc" của email, hãy thử VBA bên dưới.

Private Sub Workbook_AfterSave (ByVal thành công khi Boolean)

'Cập nhật Extendoffice 20200628

Dim xOutApp làm đối tượng

Làm mờ xMailItem làm đối tượng

Dim xName dưới dạng chuỗi

On Error Resume Next

Đặt xOutApp = CreateObject ("Outlook.Application")

Đặt xMailItem = xOutApp.CreateItem (0)

xName = ActiveWorkbook.FullName

Với xMailItem

.To = "Địa chỉ Email"

.CC = Phạm vi ("a7"). Giá trị


.Subject = "Sổ làm việc đã được lưu"

.Body = "Xin chào" & Chr (13) & Chr (13) & "Tệp hiện đã được cập nhật."

.Attachments.Add xName

.Trưng bày

'.gửi

Kết thúc với

Đặt xMailItem = Không có gì

Đặt xOutApp = Không có gì

End Sub
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Kính gửi tất cả, ai đó có thể giúp tôi không, tôi là người mới học viết mã VBA, tôi đã thực hiện một số sửa đổi, nhưng làm cách nào để gửi email nếu sổ làm việc được lưu và nếu tên người dùng khác, chẳng hạn như nếu tên người dùng của trạm là glade2 sau đó gửi email nếu sổ làm việc được lưu, nếu không gửi.

Cảm ơn bạn rất nhiều vì đã hỗ trợ của 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
Chào florin,
Không hiểu ý bạn. Tên người dùng của bạn đại diện cho điều gì?
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 pha lê, cảm ơn bạn đã trả lời, usernane là usernane môi trường, và tôi đã làm điều đó, tôi đã sử dụng hàm if và thoát sub.
Cảm ơn bạn rất nhiều.
Không có bình luận nào được đăng ở đây

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