Hoe kunt u een e-mail verzenden zodra de vervaldatum is bereikt in Excel?
Zoals in de onderstaande schermafbeelding te zien is, wordt er een e-mail verzonden naar de ontvanger in kolom A, met de bijbehorende inhoud uit kolom B in de e-mailbody, zodra de vervaldatum in kolom C binnen 7 dagen valt (bijvoorbeeld: de huidige datum is 13-9-2017). Hoe realiseert u dit? Dit artikel biedt een VBA-code om u hierbij te ondersteunen.

E-mail verzenden als Vervaldatum is voldaan met VBA-code
E-mail verzenden als Vervaldatum is voldaan met VBA-code
Voer de volgende stappen uit om een e-mailherinnering te verzenden zodra de vervaldatum in Excel is bereikt.
1. Druk tegelijkertijd op Alt+F11 om het venster Microsoft Visual Basic for Applications te openen.
2. Klik in het venster Microsoft Visual Basic for Applications op Invoegen > Module. Kopieer en plak vervolgens de onderstaande VBA-code in het Module-venster.
VBA-code: E-mail verzenden als Vervaldatum wordt gesloten in 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 Opmerkingen: De regel If CDate(xRgDateVal) - Date <= 7 And CDate(xRgDateVal) - Date > 0 Then in de VBA-code betekent dat de vervaldatum groter moet zijn dan vandaag en kleiner dan of gelijk aan 7 dagen in de toekomst. U kunt dit naar wens aanpassen.
3. Druk op de F5-toets om de code uit te voeren. Selecteer in het eerste verschijnende Kutools voor Excel-dialoogvenster het bereik van de Vervaldatum-kolom en klik op de knop OK. Zie schermafbeelding:

4. Vervolgens verschijnt het tweede Kutools voor Excel-dialoogvenster. Selecteer hierin het bijbehorende kolombereik met de optie Selecteer alstublieft e-mailadres van de ontvangers en klik op de knop OK. Zie schermafbeelding:

5. Selecteer in het laatste Kutools voor Excel-dialoogvenster de inhoud die u wilt weergeven in de e-mailbody en klik op de knop OK.

Er wordt dan automatisch een e-mail aangemaakt met de opgegeven ontvanger, onderwerp en body als de vervaldatum in kolom C kleiner dan of gelijk aan 7 dagen is. Klik op de knop Verzenden om de e-mail te verzenden.

Opmerkingen:
1. Elke aangemaakte e-mail correspondeert met één vervaldatum. Voldoen bijvoorbeeld drie vervaldatums aan de criteria, dan worden er automatisch drie e-mails aangemaakt.
2. Deze code wordt niet geactiveerd wanneer geen enkele datum voldoet aan de criteria.
3. De VBA-code werkt alleen wanneer u Outlook als uw e-mailprogramma gebruikt.

Ontgrendel de magie van Excel met KUTOOLS AI
- Slimme uitvoering: Voer celbewerkingen uit, analyseer gegevens en maak grafieken — allemaal met eenvoudige opdrachten.
- aangepaste formules: Genereer op maat gemaakte formules om uw workflows te stroomlijnen.
- VBA-programmeren: Schrijf en implementeer VBA-code moeiteloos.
- Formule-uitleg: Begrijp complexe formules moeiteloos.
- Tekstvertaling: Doorbreek taalbarrières in uw spreadsheets.
Gerelateerde artikelen:
- Hoe kunt u automatisch een e-mail verzenden op basis van een celwaarde in Excel?
- Hoe kunt u een e-mail verzenden via Outlook wanneer de Excel-werkmap wordt opgeslagen?
- Hoe kunt u een e-mail verzenden zodra een bepaalde cel in Excel is gewijzigd?
- Hoe kunt u een e-mail verzenden als er op een knop wordt geklikt in Excel?
- Hoe kunt u een e-mailherinnering of -melding verzenden als de werkmap wordt bijgewerkt in Excel?
Beste Office-productiviteitshulpmiddelen
Geef uw Excel-vaardigheden een boost met Kutools voor Excel en ervaar efficiëntie zoals nooit tevoren.Kutools voor Excel biedt meer dan 300 geavanceerde functies om de productiviteit te verhogen en Tijd besparen.Klik hier om de functie te krijgen die u het meest nodig heeft...
Office Tab brengt een tabbladinterface naar Office en maakt uw werk veel eenvoudiger
- Schakel tabbladbewerking en -lezen in voor Word, Excel, PowerPoint, Publisher, Access, Visio en Project.
- Open en maak meerdere documenten aan in nieuwe tabbladen binnen hetzelfde venster, in plaats van in afzonderlijke vensters.
- Verhoogt uw productiviteit met 50 % en bespaart u dagelijks honderden muisklikken!
Alle Kutools-add-ins in één installatieprogramma.
Kutools for Office bundelt add-ins voor Excel, Word, Outlook en PowerPoint, plus Office Tab Pro—ideaal voor teams die met meerdere Office-apps werken.
- Alles-in-één suite— add-ins voor Excel, Word, Outlook & PowerPoint plus Office Tab Pro
- Één installatieprogramma, één licentie— binnen enkele minuten klaar (MSI-geschikt)
- Werkt beter samen— gestroomlijnde productiviteit in alle Office-apps
- 30 dagen volledig functionele proefversie— geen registratie, geen creditcard
- Beste prijs-kwaliteitverhouding— bespaar ten opzichte van het afzonderlijk kopen van add-ins