Cuongnv0920
Thành viên chính thức
- Tham gia
- 24/3/18
- Bài viết
- 62
- Được thích
- 8
- Giới tính
- Nam
Xin chào tất cả các A/C GPE.
Trước đây mình dùng file này để cảnh báo các hợp đồng hết hạn qua email trước 01 ngày so với thời gian của hệ thống. và gửi cho tới khi nào mình cập nhật lại ngày mới cho nó thì không cảnh báo nữa.
Nhưng giờ mình muốn dùng file này để nhắc nhở ngày sinh nhật của Khách hàng qua email, nhưng hiện tại theo đoạn code thì đang so sánh "Date" (dd/MM/yyyy) thời gian của hệ thống, mình chỉ muốn so sánh (dd/MM) thôi, và gửi nhắc qua email trước 01 ngày.
VD: ngày sinh nhật của Khách hàng là 20/09/1991, nhưng giờ hệ thống là 20/09/2019, nếu thỏa mãn (ngày/tháng), thì sẽ gửi nhắc nhở trước 01 ngày. tức là cứ ngày 19/09 hàng năm sẽ tự động gửi nhắc nhở KH này qua mail. và tới ngày 20/09 sẽ không gửi ngày nhắc nhở của KH này nữa. "tức là chỉ nhắc 1 lần"
Trước đây mình dùng file này để cảnh báo các hợp đồng hết hạn qua email trước 01 ngày so với thời gian của hệ thống. và gửi cho tới khi nào mình cập nhật lại ngày mới cho nó thì không cảnh báo nữa.
Nhưng giờ mình muốn dùng file này để nhắc nhở ngày sinh nhật của Khách hàng qua email, nhưng hiện tại theo đoạn code thì đang so sánh "Date" (dd/MM/yyyy) thời gian của hệ thống, mình chỉ muốn so sánh (dd/MM) thôi, và gửi nhắc qua email trước 01 ngày.
VD: ngày sinh nhật của Khách hàng là 20/09/1991, nhưng giờ hệ thống là 20/09/2019, nếu thỏa mãn (ngày/tháng), thì sẽ gửi nhắc nhở trước 01 ngày. tức là cứ ngày 19/09 hàng năm sẽ tự động gửi nhắc nhở KH này qua mail. và tới ngày 20/09 sẽ không gửi ngày nhắc nhở của KH này nữa. "tức là chỉ nhắc 1 lần"
Mã:
Sub SN_KH()
Worksheets("SN_KH").Activate
Const Email = "cuongnv0920@gmail.com"
Const Subject = "NHAC NGAY SINH NHAT KHACH HANG"
Dim Body As String
Dim i As Long, lastrow As Long, a As Integer
lastrow = Sheets("SN_KH").Cells(Rows.Count, 5).End(xlUp).Row
a = 1
Body = ""
For i = 4 To lastrow
On Error Resume Next
Cells(i, 6).Value = Cells(i, 5)
If Cells(i, 6) - Date <= a Then
Cells(i, 5).Interior.ColorIndex = 3
Cells(i, 5).Font.ColorIndex = 2
Cells(i, 6).Value = "Canh bao"
Body = Body & Chr(10) & Cells(i, 2) & " - " & Cells(i, 3)
Else
Cells(i, 5).Font.ColorIndex = vbBlack
Cells(i, 5).Interior.ColorIndex = 2
Cells(i, 6).Value = ""
End If
Next
If Body <> "" Then
If SendMail(Email, Subject, Body, "") = True Then Else MsgBox "Gui mail bi loi"
End If
End Sub
Function SendMail(Email, S, Body, Attach) As Boolean
On Error Resume Next
Err.Clear
Dim OutApp As Object
Dim OutMail As Object
Set OutApp = CreateObject("Outlook.Application")
Set OutMail = OutApp.CreateItem(0)
With OutMail
.To = Email
.Subject = S
.Body = Body
If Attach <> "" Then
.Attachments.Add Attach
End If
DoEvents
.send
End With
Set OutMail = Nothing
Set OutApp = Nothing
If Err.Number = 0 Then SendMail = True Else SendMail = False
End Function