Gửi một Trang tính bằng VBA trong Microsoft Excel
Trong bài viết này, chúng tôi sẽ tạo macro để gửi trang tính dưới dạng tệp đính kèm trong email.
Trước khi chạy macro, chúng ta cần chỉ định id email và chủ đề của email.
Trong ví dụ này, chúng tôi muốn gửi “DataSheet” dưới dạng tệp đính kèm trong email.
Giải thích logic
Chúng tôi đã tạo macro “MailSheet”, lấy id email và chủ đề của email từ các hộp văn bản. Nó tạo một bản sao mới của “DataSheet”, lưu nó và gửi nó dưới dạng tệp đính kèm.
Giải thích mã
Trang tính (“DataSheet”). Sao chép Đoạn mã trên được sử dụng để tạo bản sao của “DataSheet” trong sổ làm việc mới.
ActiveWorkbook.SaveAs “Part of” & ThisWorkbook.Name _ & “” & StrDate & “.xls”
Đoạn mã trên được sử dụng để lưu sổ làm việc mới.
ActiveWorkbook.SendMail EmailID, MailSubject Đoạn mã trên được sử dụng để gửi sổ làm việc hiện hoạt dưới dạng tệp đính kèm tới id email được chỉ định, với chủ đề đã cho.
ActiveWorkbook.Close False Đoạn mã trên được sử dụng để đóng sổ làm việc đang hoạt động mà không lưu nó.
Vui lòng theo dõi bên dưới để biết mã
Sub MailSheet() 'Declaring variables Dim StrDate, EmailID, MailSubject As String 'Getting value for Email ID and subject from textboxes EmailID = Sheet1.TextBox1.Value MailSubject = Sheet1.TextBox2.Value 'Copying "DataSheet" to new workbook Sheets("DataSheet").Copy 'Formatting date and time to particular format StrDate = Format(Date, "dd-mm-yy") & " " & Format(Time, "h-mm") 'Saving active workbook with new name ActiveWorkbook.SaveAs "Part of " & ThisWorkbook.Name _ & " " & StrDate & ".xls" 'Sending mail ActiveWorkbook.SendMail EmailID, MailSubject 'Close the active workbook ActiveWorkbook.Close False End Sub
Nếu bạn thích blog này, hãy chia sẻ nó với bạn bè của bạn trên Facebook và Facebook.
Chúng tôi rất muốn nghe ý kiến từ bạn, hãy cho chúng tôi biết cách chúng tôi có thể cải thiện công việc của mình và làm cho nó tốt hơn cho bạn. Viết thư cho chúng tôi [email protected]