• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

bij benadering datum bericht in outlook of bureaublad weergeven

Status
Niet open voor verdere reacties.

Theres

Nieuwe gebruiker
Lid geworden
24 sep 2014
Berichten
1
Beste excel helpers,
Ik heb een werkmap met daarin de gegevens van ongeveer 200 mensen die allen documenten hebben zoals paspoort,rijbewijs,diploma's die op een bepaalde datum hun geldigheid verliezen.Nu wil ik graag een bericht in outlook of op het bureaublad krijgen die de personeelsfunctionaris 2 maanden vooraf informeert dat bepaalde docu op een bepaalde datum zullen verlopen,zodat diegene waarvan een document gaat verlopen tijdig geinformeerd kan worden.
Kan mij iemand mij uitleggen hoe ik dit als volslagen amateur :rolleyes:voor elkaar kan krijgen,waarvoor bij voorbaat al mijn hartelijke dank.Ik heb een klein voorbeeld bijgevoegd.
 

Bijlagen

  • Helpmij.xls
    13,5 KB · Weergaven: 40
Voorwaarde is dus dat het verschil in dagen tussen de datum van vandaag en de datum in de cel minder dan 61 moet zijn?

Je hebt er op dit moment geen datums in staan die aan de voorwaarde voldoen, maar zet dit eens in de Workbook sectie, dan worden datums die aan de voorwaarde voldoen rood gekleurd bij het openen van het document:
Code:
Private Sub Workbook_Open()
    Dim LastRow As Integer
    Dim i As Integer
    Dim y As Integer
    
    LastRow = Range("A65536").End(xlUp).Row
    For i = 8 To LastRow
        For y = 4 To 7
            If DateValue(Cells(i, y)) - Date < 61 Then
                Cells(i, y).Interior.ColorIndex = 3
            Else
                Cells(i, y).Interior.ColorIndex = 0
            End If
        Next y
    Next i
End Sub
 
Laatst bewerkt:
Automatisch E-mail aanmaken met verlopen documenten

Kijk eens of de macro in bijgaande bestand doet wat je wilt.
De macro maakt een E-mail aan in Outlook, deze wordt nog niet verstuurd.
Door een kleine aanpassing in de code zou de E-mail ook direct kunnen worden verstuurd.

WestyBekijk bijlage E-mail verlopen documenten.xls
 
Macro weer koppelen

Let even op !
Als ik het eigen geplaatste bestand open, werkt de macro niet onder de knop.
Rechtklik op de macroknop en kies macro toevoegen.
Kies : VerlopenDocument
 
@ Westy1968

Vul een array niet cel per cel maar in 1 leesbeweging.
Code:
DocArray = Cells(3, 1).CurrentRegion

Gebruik geen overbodige variabelen, ze nemen toch maar enkel geheugenruimte in.
Code:
If DocArray(Regel, Kolom) - Date < 61 Then

Code:
    With CreateObject("Outlook.Application").CreateItem(0)
        .To = Range("C1")
        .Subject = "Overzicht verlopen documenten"
        .Body = BodyTekst
        '.Send   'or use .Display to show you the email before sending it.
        .Display
    End With
 
@Warme bakkertje

Bedankt voor de tip voor wat betreft het inlezen van gegevens in een Array. Zeer hulpvol.

Over het gebruik van variabelen ben ik een andere mening toegedaan.
Dat variabelen geheugenruimte in nemen is waar, echter door gebruik van variabelen wordt de VBA code eenvoudiger leesbaar. Nu is deze macro natuurlijk niet erg groot, echter bij macros van enkele honderden regels code wordt het zonder gebruik van variabelen erg lastig.
Gezien de rekencapaciteit van huidige PCs zie ik dan ook geen probleem om ook in kleine macros toch variabelen te gebruiken.

M.vr.gr.
Westy
 
Geef de geheugenruimte dan wel terug vrij bij het beëindigen v/d macro.
 
Beste edmoor,Sorry voor de late reaktie maar door een vakantie en het ziek terugkomen hiervan ben ik niet eerder in de gelegenheid geweest je te bedanken.Ik ga je oplossing proberen toe te oassen.Tevens ook dank aan alle die gereageerd hebben.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan