Sut i anfon e-bost os yw'r dyddiad dyledus wedi'i fodloni yn Excel?
Fel y dangosir yn y sgrinlun isod, os yw'r dyddiad dyledus yng ngholofn C yn llai na neu'n hafal i 7 diwrnod (er enghraifft, y dyddiad cyfredol yw 2017/9/13), anfonir e-bost at y derbynnydd penodedig yng ngholofn A a'r mae cynnwys penodedig yng ngholofn B yn cael ei ddosbarthu yng nghorff yr e-bost. Sut allech chi ei wneud i'w gyflawni? Mae'r erthygl hon yn darparu cod VBA i'ch helpu i gyflawni'r dasg hon.
Anfon e-bost os yw'r dyddiad dyledus wedi'i fodloni â chod VBA
Anfon e-bost os yw'r dyddiad dyledus wedi'i fodloni â chod VBA
Gwnewch fel a ganlyn i anfon nodyn atgoffa e-bost os yw'r dyddiad dyledus wedi'i fodloni yn Excel.
1. Gwasgwch y Alt + F11 allweddi ar yr un pryd i agor y Microsoft Visual Basic ar gyfer Ceisiadau ffenestr.
2. Yn y Microsoft Visual Basic ar gyfer Ceisiadau ffenestr, cliciwch Mewnosod > Modiwlau. Yna copïwch a gludwch y cod VBA isod i mewn i ffenestr y Modiwl.
Cod VBA: Anfon e-bost os yw'r dyddiad dyledus ar gau yn Excel
Public Sub CheckAndSendMail()
'Updated by Extendoffice 2018/11/22
Dim xRgDate As Range
Dim xRgSend As Range
Dim xRgText As Range
Dim xRgDone As Range
Dim xOutApp As Object
Dim xMailItem As Object
Dim xLastRow As Long
Dim vbCrLf As String
Dim xMailBody As String
Dim xRgDateVal As String
Dim xRgSendVal As String
Dim xMailSubject As String
Dim i As Long
On Error Resume Next
Set xRgDate = Application.InputBox("Please select the due date column:", "KuTools For Excel", , , , , , 8)
If xRgDate Is Nothing Then Exit Sub
Set xRgSend = Application.InputBox("Please select the recipients?email column:", "KuTools For Excel", , , , , , 8)
If xRgSend Is Nothing Then Exit Sub
Set xRgText = Application.InputBox("Select the column with reminded content in your email:", "KuTools For Excel", , , , , , 8)
If xRgText Is Nothing Then Exit Sub
xLastRow = xRgDate.Rows.count
Set xRgDate = xRgDate(1)
Set xRgSend = xRgSend(1)
Set xRgText = xRgText(1)
Set xOutApp = CreateObject("Outlook.Application")
For i = 1 To xLastRow
xRgDateVal = ""
xRgDateVal = xRgDate.Offset(i - 1).Value
If xRgDateVal <> "" Then
If CDate(xRgDateVal) - Date <= 7 And CDate(xRgDateVal) - Date > 0 Then
xRgSendVal = xRgSend.Offset(i - 1).Value
xMailSubject = xRgText.Offset(i - 1).Value & " on " & xRgDateVal
vbCrLf = "<br><br>"
xMailBody = "<HTML><BODY>"
xMailBody = xMailBody & "Dear " & xRgSendVal & vbCrLf
xMailBody = xMailBody & "Text : " & xRgText.Offset(i - 1).Value & vbCrLf
xMailBody = xMailBody & "</BODY></HTML>"
Set xMailItem = xOutApp.CreateItem(0)
With xMailItem
.Subject = xMailSubject
.To = xRgSendVal
.HTMLBody = xMailBody
.Display
'.Send
End With
Set xMailItem = Nothing
End If
End If
Next
Set xOutApp = Nothing
End Sub
Nodiadau: Y llinell Os CDate (xRgDateVal) - Dyddiad <= 7 Ac CDate (xRgDateVal) - Dyddiad> 0 Yna yn y cod VBA yn golygu bod yn rhaid i'r dyddiad dyledus fod yn fwy nag 1 diwrnod ac yn llai na neu'n hafal i 7 diwrnod. Gallwch ei newid yn ôl yr angen.
3. Gwasgwch y Allwedd F5 i redeg y cod. Yn y popping cyntaf Kutools for Excel blwch deialog, dewiswch yr ystod colofn dyddiad dyledus ac yna cliciwch ar y OK botwm. Gweler y screenshot:
4. Yna'r ail Kutools for Excel blwch deialog yn ymddangos, dewiswch yr ystod golofn gyfatebol sy'n cynnwys cyfeiriadau e-bost y derbynwyr, a chliciwch ar y OK botwm. Gweler y screenshot:
5. Yn yr olaf Kutools for Excel blwch deialog, dewiswch y cynnwys rydych chi am ei arddangos yn y corff e-bost, ac yna cliciwch ar y OK botwm.
Yna bydd e-bost yn cael ei greu yn awtomatig gyda'r derbynnydd, pwnc a chorff penodedig wedi'i restru os yw'r dyddiad dyledus yng ngholofn C yn llai na neu'n hafal i 7 diwrnod. Cliciwch y anfon botwm i anfon yr e-bost.
Nodiadau:
1. Mae pob e-bost a grëir yn cyfateb i ddyddiad dyledus. Er enghraifft, os oes tri dyddiad dyledus sy'n cwrdd â'r meini prawf, bydd tair neges e-bost yn cael eu creu yn awtomatig.
2. Ni fydd y cod hwn yn cael ei sbarduno os nad oes dyddiadau sy'n cwrdd â'r meini prawf.
3. Dim ond pan fyddwch chi'n defnyddio Outlook fel eich rhaglen e-bost y mae'r cod VBA yn gweithio.
Erthyglau cysylltiedig:
- Sut i anfon e-bost yn awtomatig yn seiliedig ar werth celloedd yn Excel?
- Sut i anfon e-bost trwy Outlook pan arbedir llyfr gwaith yn Excel?
- Sut i anfon e-bost os yw cell benodol yn cael ei haddasu yn Excel?
- Sut i anfon e-bost os yw'r botwm wedi'i glicio yn Excel?
- Sut i anfon nodyn atgoffa neu hysbysiad e-bost os yw'r llyfr gwaith yn cael ei ddiweddaru yn Excel?
Offer Cynhyrchiant Swyddfa Gorau
Supercharge Eich Sgiliau Excel gyda Kutools for Excel, a Phrofiad Effeithlonrwydd Fel Erioed Erioed o'r blaen. Kutools for Excel Yn cynnig dros 300 o nodweddion uwch i hybu cynhyrchiant ac arbed amser. Cliciwch Yma i Gael Y Nodwedd Sydd Ei Angen Y Mwyaf...
Office Tab Yn dod â rhyngwyneb Tabbed i Office, ac yn Gwneud Eich Gwaith yn Haws o lawer
- Galluogi golygu a darllen tabbed yn Word, Excel, PowerPoint, Cyhoeddwr, Mynediad, Visio a Phrosiect.
- Agor a chreu dogfennau lluosog mewn tabiau newydd o'r un ffenestr, yn hytrach nag mewn ffenestri newydd.
- Yn cynyddu eich cynhyrchiant 50%, ac yn lleihau cannoedd o gliciau llygoden i chi bob dydd!


















