Dịch vụ sửa máy tính pc laptop máy in - Nạp mực máy in Trường Tín Tphcm
Dịch vụ sửa máy tính pc laptop máy in - Nạp mực máy in Trường Tín Tphcm

Cách gửi email từ bảng tính Excel bằng tập lệnh VBA

--
Web Tin Học Trường Tín có bài: Cách gửi email từ bảng tính Excel bằng tập lệnh VBA Gửi email từ Microsoft Excel chỉ yêu cầu một vài tập lệnh đơn giản. Thêm chức năng này vào bảng tính và bạn thực sự có thể tận dụng tối đa mọi tính năng trong Excel.

Gửi email từ Microsoft Excel chỉ đòi hỏi một vài tập lệnh đơn giản. Thêm chức năng này vào bảng tính và bạn đích thực có thể tận dụng tối đa mọi tính năng trong Excel.

Quantrimang đã trình bày biết bao các macro Excel tuyệt vời, có thể hoàn thành được những thứ giống như các tập lệnh VBA, nhưng chẳng cần kiến ​​thức lập trình. Bên cạnh đó, còn có nhiều thứ nâng lên hơn bạn chỉ cũng có thể làm với VBA, như tạo báo cáo trong bảng tính về tất cả tin tức trên máy tính của bạn.

Gửi email từ Excel với VBA

  • Tại sao lại gửi email từ Excel?
  • Cách gửi email từ bảng tính Excel bằng tập lệnh VBA
    • Bước 1: Tạo VBA Macro
    • Bước 2: Thiết lập các trường “From” và “To” của CDO
    • Bước 3: Định cấu hình CDO để sử dụng SMTP bên ngoài
    • Bước 4: Hoàn tất thiết lập CDO
  • Tự động hóa toàn bộ quá trình

Tại sao lại gửi email từ Excel?

Có rất nhiều nguyên nhân tại sao bạn có thể muốn gửi email từ bên trong Microsoft Excel.

Có thể bạn có chuyên viên cập nhật tài liệu hoặc bảng tính mỗi tuần và bạn muốn thu được thông báo qua email khi những cập nhật đó được thực hiện. Hoặc bạn có thể có 1 bảng tính chứa các địa chỉ mail liên lạc và bạn muốn gửi một email đến mọi thứ những địa điểm đó cùng một lúc.

Có thể bạn đang nghĩ rằng việc sử dụng tập lệnh trong Excel sẽ phức tạp. Nhưng yên tâm đi! Thực hiện điều này cực kì đơn giản.

Bài viết này sẽ hướng dẫn bạn đọc sử dụng một tính năng có sẵn trong Excel VBA từ rất lâu rồi. Đó là Collaboration Data Objects (CDO) .

Cách gửi email từ bảng tính Excel bằng tập lệnh VBA

CDO là một thành phần trong qui trình gửi email, được dùng từ những hệ điều Windows đầu tiên. Trước đây, nó được xem là CDONTS, và sau đó với sự sinh ra của Windows 2000 XP, cái tên này đã được thay thế bằng ” CDO for Windows 2000 ” (CDO cho Windows 2000). Thành phần này đã được kể cả trong cài đặt VBA ở các ứng dụng Microsoft Word hoặc Excel và sẵn sàng để sử dụng.

Sử dụng phần tử khiến cho việc gửi email từ bên trong những mặt hàng Windows với VBA rất là dễ dàng. Trong tỉ dụ này, bạn sẽ sử dụng thành phần CDO trong Excel để gửi email chứa kết quả từ một ô Excel cụ thể.

Cách gửi email từ bảng tính Excel bằng tập lệnh VBA

Bước 1: Tạo VBA Macro

Bước trước mắt là vào tab Excel Developer.

Bên trong tab Developer, nhấp vào Insert trong hộp Controls, rồi chọn Command Button thích hợp.

Cách gửi email từ bảng tính Excel bằng tập lệnh VBA

Vẽ nó vào trang tính và sau đó tạo macro mới cho trang tính bằng phương pháp nhấp vào Macro trong ribbon Developer.

Cách gửi email từ bảng tính Excel bằng tập lệnh VBA

Khi bạn nhấp vào nút Create, nó sẽ mở trình chỉnh sửa VBA.

Thêm tham chiếu vào thư viện CDO bằng cách điều hướng đến Tools > References trong trình chỉnh sửa.

Cách gửi email từ bảng tính Excel bằng tập lệnh VBA

Cuộn xuống bản kê cho tới khi bạn tìm thấy Microsoft CDO for Windows 2000 Library . Đánh dấu vào hộp kiểm và nhấp OK.

Cách gửi email từ bảng tính Excel bằng tập lệnh VBA

Khi bạn nhấp vào OK, hãy ghi nhớ tên hàm mà bạn đang dán tập lệnh. Bạn sẽ cần nó sau này.

Bước 2: Thiết lập các trường “From” và “To” của CDO

Để thi hành việc này, trước tiên bạn cần tạo các đối tượng trong mail và thiết lập tất cả những trường cần có để gửi email.

Hãy ghi nhớ rằng mặc dù nhiều trường là tùy chọn, bạn bắt buộc phải điền các trường From To.

   Dim CDO_Mail As Object Dim CDO_Config As Object Dim SMTP_Config As Variant Dim strSubject As String Dim strFrom As String Dim strTo As String Dim strCc As String Dim strBcc As String Dim strBody As String strSubject = "Results from Excel Spreadsheet" strFrom = "rdube02@gmail.com" strTo = "rdube02@gmail.com" strCc = "" strBcc = "" strBody = "The total results for this quarter are: " & Str(Sheet1.Cells(2, 1))   

Điều thú vị đặc biệt là bạn cũng có thể tạo bất kỳ chuỗi nào bạn muốn để tùy chỉnh một email đầy đặn và gán nó vào biến strBody.

Ghép các phần tử của email lại với nhau, bằng phương pháp dùng chuỗi & để chèn dữ liệu từ bất kỳ trang tính Microsoft Excel nào vào ngay trong thư email, giống như được hiển thị ở trên.

Bước 3: Định cấu hình CDO để sử dụng SMTP bên phía ngoài

Phần tiếp theo là nơi bạn sẽ cấu hình CDO để sử dụng bất kỳ máy server SMTP bên ngoài nào với mục tiêu gửi email.

Ví dụ này là thiết lập không phải SSL thông qua Gmail. CDO có khả năng SSL, nhưng nằm ngoài độ rộng của bài viết này. Nếu bạn cần dùng SSL, code nâng cao này trong Github có thể có ích cho bạn.

   Set CDO_Mail = CreateObject("CDO.Message") On Error GoTo Error_Handling Set CDO_Config = CreateObject("CDO.Configuration") CDO_Config.Load -1 Set SMTP_Config = CDO_Config.Fields With SMTP_Config .Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2 .Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "smtp.gmail.com" .Item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1 .Item("http://schemas.microsoft.com/cdo/configuration/sendusername") = "email@website.com" .Item("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "password" .Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25 .Item("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = True .Update End With With CDO_Mail Set .Configuration = CDO_Config End With   

Bước 4: Hoàn tất thiết lập CDO

Bây giờ bạn đã cấu hình xong kết nối đến máy server SMTP để gửi email. Tất cả những gì còn sót lại bạn cần làm là điền vào các trường phù hợp cho CDO_Mail object và phát lệnh Send.

Đây là cách bạn làm điều đó:

   CDO_Mail.Subject = strSubject CDO_Mail.From = strFrom CDO_Mail.To = strTo CDO_Mail.TextBody = strBody CDO_Mail.CC = strCc CDO_Mail.BCC = strBcc CDO_Mail.Send Error_Handling: If Err.Description    "" Then MsgBox Err.Description   

Sẽ không có bất kỳ cảnh báo bảo mật nào. Điều này còn cũng đều có thể xảy ra khi bạn sử dụng đối tượng mail Outlook.

CDO chỉ cần đặt tất cả những thành phần của email lại cùng nhau và sử dụng chi tiết kết nối máy server SMTP để kích hoạt việc gửi mail. Đó là cách đơn giản nhất để phối hợp email vào các tập lệnh Microsoft Word hoặc Excel VBA.

Để kết nối Command Button với tập lệnh này, hãy vào trình chỉnh sửa code và nhấp vào Sheet1 để xem VBA code cho trang tính đó.

Nhập tên của hàm mà bạn đã dán tập lệnh ở trên.

Cách gửi email từ bảng tính Excel bằng tập lệnh VBA

Đây là mail mà bạn sẽ thu được trong hòm thư đến của mình:

Cách gửi email từ bảng tính Excel bằng tập lệnh VBA

Lưu ý: Nếu bạn nhận được lỗi The transport failed to connect to the server , hãy đáp ứng bạn đã nhập đúng tên người dùng, mật khẩu, máy server SMTP và số cổng trong các loại code được liệt kê bên dưới With SMTP_Config.

Tự động hóa toàn bộ qui trình

Tất cả đều xảy ra đẹp đẽ và bạn cũng đều có thể gửi email từ Excel chỉ bằng một lần nhấn nút. Tuy nhiên, bạn cũng đều có thể muốn sử dụng chức năng này một cách thường xuyên, nên việc tự động hóa quy trình sẽ có ý nghĩa vô cùng quan trọng.

Để làm như vậy, bạn phải thi hành thay đổi đối với macro. Đi đến Visual Basic Editor , sau đó sao chép và dán toàn bộ code mà bạn đã gộp lại.

Cách gửi email từ bảng tính Excel bằng tập lệnh VBA

Tiếp theo, chọn ThisWorkbook từ hệ thống phân cấp Project.

Từ hai trường dropdown ở đầu cửa sổ code, chọn Workbook Open từ menu dropdown Methods.

Dán tập lệnh email ở trên vào Private Sub Workbook_Open() .

Điều này sẽ chạy macro bất kể bao giờ bạn mở file Excel.

Tiếp theo, mở Task Scheduler.

Bạn sẽ sử dụng công cụ này để đòi hỏi Windows tự động mở bảng tính theo các khoảng thời gian được đặt trước. Tại thời điểm đó macro của bạn sẽ được kích hoạt và gửi email.

Cách gửi email từ bảng tính Excel bằng tập lệnh VBA

Chọn Create Basic Task… từ menu Action và làm việc theo cách của bạn thông qua trình chỉ dẫn cho đến khi bạn tới màn hình Action.

Chọn Start a program và nhấn Next.

Cách gửi email từ bảng tính Excel bằng tập lệnh VBA

Sử dụng nút Browse để tìm vị trí của Microsoft Excel trên máy tính hoặc sao chép và dán đường đưa vào trường Program/script.

Sau đó, nhập đường dẫn đến tư liệu Microsoft Excel của bạn vào trường Add arguments.

Hoàn tất quá trình và lịch biểu của bạn sẽ có thực hiện.

Bạn nên chạy thí nghiệm bằng cách lên lịch cho hành động trong một vài phút, sau đó sửa đổi lại khoảng thời gian, khi bạn xác nhận rằng nó đã hoạt động.

Lưu ý : Bạn cũng có thể có thể phải điều tiết cài đặt Trust Center để đảm bảo rằng macro chạy đúng cách.

Để làm như vậy, hãy mở bảng tính và điều phối đến File > Options > Trust Center .

Từ đây, hãy nhấp vào Trust Center Settings và trên màn hình tiếp theo, hãy chọn Never show information about blocked content .

Microsoft Excel là một công cụ rất là mạnh mẽ, nhưng việc học cách tận dụng nhiều nhất nó cũng có thể có thể là một thử thách. Nếu bạn đích thực muốn làm chủ phần mềm, bạn sẽ cực kỳ cần phải nhẹ nhõm với VBA và đó không phải là một trọng trách dễ dàng.

Tuy nhiên, với một ít kinh nghiệm về VBA, bạn sẽ sớm cũng đều có thể lập trình Microsoft Excel thực hiện các tác vụ cơ bản 1 cách tự động, giúp bạn có thêm thời gian để tập trung vào các vấn đề quan trọng hơn.

Cần có thời gian để tích lũy kiến ​​thức nghiệp vụ về VBA, nhưng bạn sẽ sớm thấy được thành tựu nếu đích thực nghiêm túc.

Chúc bạn thành công!

Xem thêm:

  • Tự tạo “trình duyệt” Internet với VBA
  • Cách phá mật khẩu VBA trong Excel
  • OpenOffice.org Calc bổ sung thêm phần hỗ trợ Excel VBA
  • Cách gửi hình ảnh, thu thanh qua email bằng VoNo

Excel,bảng tính Excel,gửi email từ một bảng tính Excel,gửi email từ một bảng tính Excel bằng VBA,tại sao nên gửi email từ excel,cách gửi email từ excel,hướng dẫn gửi email từ excel

Nội dung Cách gửi email từ bảng tính Excel bằng tập lệnh VBA được tổng hợp sưu tầm biên tập bởi: Tin Học Trường Tín. Mọi ý kiến vui lòng gửi Liên Hệ cho truongtin.top để điều chỉnh. truongtin.top tks.

Bài Viết Liên Quan


Xếp Hạng post

Bài Viết Khác

--