Skip to main content

Kutools voor Office — Eén Suite. Vijf Tools. Verwezenlijkt Meer.

Hoe vind je de maximale of minimale waarde in een bepaald datumbereik (tussen twee data) in Excel?

Author Siluvia Last modified

In dagelijkse gegevensanalyse, vooral bij het werken met transactierecords of tijdreeksdata, moet je vaak de hoogste of laagste waarde identificeren die binnen een specifieke periode voorkomt. Stel je bijvoorbeeld voor dat je een tabel hebt zoals te zien is in de onderstaande schermafbeelding, en je wilt de maximale of minimale waarde tussen twee data bepalen — bijvoorbeeld van 2016/7/1 tot 2016/12/1. Dit is een veelvoorkomende vereiste bij het genereren van rapporten over specifieke perioden, het vergelijken van maandelijkse prestaties of het volgen van pieken en dalen in de data. Dit artikel zal je door verschillende praktische oplossingen leiden met behulp van Excel-formules, VBA-code en ingebouwde functies, zodat je snel en nauwkeurig de waarde kunt extraheren die je nodig hebt.

A screenshot showing an Excel table with dates and values to calculate max or min in a date range


Zoek maximale of minimale waarde in een bepaald datumbereik met arrayformules

Een eenvoudige aanpak is om arrayformules in Excel te gebruiken, waarmee je waarden kunt berekenen op basis van meerdere criteria — zoals het controleren of data binnen je gespecificeerde bereik valt. Deze methode is geschikt voor gegevens van gemiddelde grootte en voor gebruikers die bekend zijn met het invoeren van formules.

Stel dat je werkblad data vermeldt in kolom A (A5:A17) en de bijbehorende waarden in kolom B (B5:B17), met de start- en einddata voor het bereik ingevoerd in cellen B1 en D1.

1. Selecteer een lege cel waar je het resultaat wilt weergeven (bijv., E2).

Het zoeken naar de maximale waarde tussen 2016/7/1 en 2016/12/1:

2. Voer de volgende formule in de geselecteerde cel in. Nadat je klaar bent met bewerken, druk op Ctrl + Shift + Enter (niet alleen op Enter), zodat Excel de formule herkent als een arrayformule:

=MAX(IF((A5:A17<=$D$1)*(A5:A17>=$B$1),B5:B17,""))

Deze formule controleert welke data binnen je start- en einddatum vallen, en houdt alleen de waarden uit de overeenkomstige rijen over om het maximum te berekenen.

A screenshot showing the result of finding the max value within a date range using an array formula in Excel

Het zoeken naar de minimale waarde tussen 2016/7/1 en 2016/12/1:

3. Om het minimum binnen hetzelfde datumbereik te vinden, gebruik een vergelijkbare aanpak. Voer de volgende formule in (en bevestig opnieuw met Ctrl + Shift + Enter):

=MIN(IF((A5:A17<=$D$1)*(A5:A17>=$B$1), B5:B17, ""))

Deze formule werkt op dezelfde manier, maar retourneert de minimale waarde die overeenkomt met je datumcriteria.

A screenshot showing the result of finding the min value within a date range using an array formula in Excel

Opmerkingen:

  • In de bovenstaande voorbeelden is A5:A17 het bereik dat je data bevat, $B$1 is de startdatum, $D$1 is de einddatum, en B5:B17 is het bereik van waarden dat je wilt evalueren. Pas deze verwijzingen aan om ze te laten matchen met je daadwerkelijke data.
  • Zorg ervoor dat de twee bereiken die je refereert even lang zijn — anders kan de formule fouten genereren.
  • Controleer dubbel dat je datumvermeldingen zijn opgemaakt als data en niet als tekst, anders werkt de formule mogelijk niet zoals bedoeld.

Tips:

  • Als je werkt met Office 365 of Excel 2021 en later, kun je de MAXIFS- en MINIFS-functies gebruiken voor meer rechte voorwaardelijke berekeningen.
  • Als de formule onverwacht een 0 of leeg resultaat geeft, controleer dan of je datumbereik overlapt met de beschikbare datums in de data en kijk of er onopgemerkte lege cellen zijn.

VBA-code: Automatisch de maximale of minimale waarde vinden in een gespecificeerd datumbereik

Voor gebruikers die werken met grote datasets, die deze taak vaak moeten herhalen, of die automatisering nodig hebben in rapportage, biedt een VBA-macro-oplossing een efficiënte manier om de maximale of minimale waarde binnen een gekozen datumbereik te vinden. Met VBA kun je de gebruiker vragen om de relevante bereiken te selecteren en de data in te stellen elke keer, wat ideaal is voor dynamische toepassingen of geavanceerde workflow-integratie.

1. Ga naar Ontwikkelaar > Visual Basic. Klik in het venster van de VBA-editor die verschijnt op Invoegen > Module, en kopieer en plak vervolgens de volgende code in de nieuwe module:

Sub FindMaxMinInDateRange_Robust()
    Dim ws As Worksheet
    Dim dateRange As Range, valueRange As Range
    Dim startCell As Range, endCell As Range
    Dim startDate As Date, endDate As Date
    Dim i As Long
    Dim d As Date, v As Variant
    Dim hasHit As Boolean
    Dim maxV As Double, minV As Double
    Const TITLE As String = "KutoolsforExcel"
    
    On Error GoTo FailFast
    
    Set ws = ActiveSheet
    
    
    Set dateRange = Application.InputBox("Select the DATE range:", TITLE, Type:=8)
    If dateRange Is Nothing Then Exit Sub
    Set valueRange = Application.InputBox("Select the VALUE range (same rows as date range):", TITLE, Type:=8)
    If valueRange Is Nothing Then Exit Sub
    
    If dateRange.Rows.Count <> valueRange.Rows.Count Then
        MsgBox "Date range and value range must have the SAME number of rows.", vbExclamation, TITLE
        Exit Sub
    End If
    
   
    Set startCell = Application.InputBox("Select START date cell:", TITLE, Type:=8)
    If startCell Is Nothing Then Exit Sub
    Set endCell = Application.InputBox("Select END date cell:", TITLE, Type:=8)
    If endCell Is Nothing Then Exit Sub
    
    If Not IsDate(startCell.Value) Or Not IsDate(endCell.Value) Then
        MsgBox "Start/End cell must contain valid dates.", vbExclamation, TITLE
        Exit Sub
    End If
    
    startDate = CDate(startCell.Value)
    endDate = CDate(endCell.Value)
 
    If startDate > endDate Then
        Dim tmp As Date
        tmp = startDate: startDate = endDate: endDate = tmp
    End If
    

    For i = 1 To dateRange.Rows.Count
        If IsDate(dateRange.Cells(i, 1).Value) Then
            d = CDate(dateRange.Cells(i, 1).Value)
            If d >= startDate And d <= endDate Then
                v = valueRange.Cells(i, 1).Value
                If IsNumeric(v) And Not IsEmpty(v) Then
                    If Not hasHit Then
                        maxV = CDbl(v): minV = CDbl(v)
                        hasHit = True
                    Else
                        If CDbl(v) > maxV Then maxV = CDbl(v)
                        If CDbl(v) < minV Then minV = CDbl(v)
                    End If
                End If
            End If
        End If
    Next i
    
    If hasHit Then
        MsgBox "Max value in range: " & maxV & vbCrLf & _
               "Min value in range: " & minV, vbInformation, TITLE
    Else
        MsgBox "No rows matched the date range (or values were non-numeric).", vbExclamation, TITLE
    End If
    Exit Sub

FailFast:
    MsgBox "Something went wrong: " & Err.Description, vbExclamation, TITLE
End Sub

2. Om de macro uit te voeren, klik op de Run button knop in de VBA-editor (of druk op F5). Volg de prompts om de datum- en waardebereiken te selecteren, en voer de start- en einddatums in. De resulterende maximale en minimale waarden voor je gespecificeerde datumbereik worden weergegeven in een dialoogvenster.

Tips:

  • Zorg ervoor dat de geselecteerde datum- en waardebereiken hetzelfde aantal rijen bevatten en direct met elkaar corresponderen.
  • Deze aanpak is vooral handig voor het verwerken van uitgebreide lijsten of het automatiseren van repetitieve maximum-/minimumberekeningen op basis van veranderende criteria.
  • Als een leeg of ongeldig bereik wordt geselecteerd, of als de datuminput niet correct is opgemaakt, kan de code geen geldig resultaat opleveren — controleer je selecties voordat je de code uitvoert.

Andere ingebouwde Excel-methoden: Gebruik PivotTable om te filteren en max/min weer te geven op basis van een datumbereik

Als je liever geen formules of code gebruikt, biedt het gebruik van de PivotTable-functie van Excel een interactieve, formulevrije methode om data te filteren op basis van data en samenvattingswaarden zoals maximum of minimum weer te geven. Deze oplossing is geschikt voor gebruikers die data willen verkennen, rapporten willen genereren of criteria gemakkelijk willen aanpassen via een grafische interface.

1. Selecteer je tabel (inclusief data en waarden), ga vervolgens naar het tabblad Invoegen en klik op PivotTable.

2. Kies in het dialoogvenster PivotTable maken waar je de PivotTable wilt plaatsen, en klik op OK.

3. Sleep in het deelvenster PivotTable Velden het datumveld naar het Rijen gebied, en het waarden-veld (het veld waarvoor je de max/min wilt vinden) naar het Waarden gebied. Standaard wordt de Som weergegeven; klik op het veld in Waarden, kies Instellingen waardeveld, en wijzig naar Max of Min indien nodig.

4. Om te filteren op een specifiek datumbereik, klik op de vervolgkeuzelijst bij de rijlabels voor het Datum-veld, kies Datumfilters > Tussen…, en specificeer je start- en einddatum (bijv., 2016/7/1 tot 2016/12/1) en klik op OK.

De PivotTable toont nu de maximale of minimale waarde voor elke datum binnen je gespecificeerde bereik. Als je alleen de hoogste of laagste waarde in dat bereik nodig hebt, kun je verder filteren of visueel scannen van de samengevatte resultaten.

Opmerkingen:

  • Zorg ervoor dat alle cellen in de Datum-kolom echte datums zijn (en geen tekst). Gemengde formaten kunnen ervoor zorgen dat filters rijen missen.
  • Als de brongegevens veranderen, klik met de rechtermuisknop op de PivotTable en kies Vernieuwen om de resultaten bij te werken.
  • Afhankelijk van je lay-out kan Excel datums groeperen per maand/kwartaal/jaar. Indien nodig, klik met de rechtermuisknop op een datum in de PivotTable en kies Ongroepeer (of Groepeer… om een gewenst niveau in te stellen).
  • Voor zeer grote datasets kan het plaatsen van de PivotTable op een nieuw werkblad de leesbaarheid en prestaties verbeteren.

Tips:

  • Voeg een Segmentbalk toe voor het Datum-veld (PivotTable Analyseren > Segmentbalk invoegen) om ranges interactief te wijzigen.
  • Heb je een enkele max/min nodig over het hele gefilterde bereik? Na het filteren, sorteer de Waarden-kolom of voeg een tweede Waarden-veld toe en schakel het om naar Max/Min.
  • Combineer met een Pivotgrafiek voor een visuele samenvatting die zich aanpast aan je filters.

Deze methode vermijdt handmatige formule-ingave en biedt dynamische interactie — ideaal voor presentaties of scenario's met meerdere gebruikers. Voor sterk aangepaste uitkomsten of batchautomatisering over veel werkbladen, overweeg dan de formule- of VBA-aanpak.


Gerelateerde artikelen:

Beste productiviteitstools voor Office

🤖 Kutools AI Assistent: Transformeer data-analyse door: Intelligente uitvoering |Code genereren |Aangepaste formules maken |Gegevens analyseren en grafieken genereren |Kutools functies aanroepen
Populaire functies: Dubbele waarden markeren | Verwijder lege rijen | Kolommen of cellen samenvoegen zonder gegevensverlies |   Afronden zonder formule...
Super ZOEKEN: Meervoudig-criteria opzoeken | Meervoudige waarde opzoeken | Meervoudig-blad opzoeken | Fuzzy Match....
Geavanceerde keuzelijst: Keuzelijst snel maken | Afhankelijke keuzelijst | Meervoudige selectie in keuzelijst....
Kolombeheer: Specifiek aantal kolommen toevoegen | Kolommen verplaatsen | Zichtbaarheidsstatus van verborgen kolommen wisselen | Bereik & kolommen vergelijken...
Uitgelichte functies: Rasterfocus | Ontwerpweergave | Verbeterde formulebalk | Werkboek- & Werkbladbeheer | AutoTekstbibliotheek | Datumkiezer | Gegevens samenvoegen | Cellen coderen/decoderen | E-mail verzenden via lijst | Superfilter | Speciaal filter (filter cellen met vetgedrukt/cursief/doorhalen...)...
Top15 gereedschapssets:12 teksttools (Tekst toevoegen, Specifieke tekens verwijderen, ...) | 50+ grafiek typen (Gantt-diagram, ...) | 40+ praktische formules (Leeftijd berekenen op basis van geboortedatum, ...) | 19 invoegtools (QR-code invoegen, Afbeelding invoegen vanaf pad, ...) | 12 conversietools (Omzetten naar woorden, Valutaconversie, ...) | 7 Samenvoeg- & splitsgereedschappen (Geavanceerd samenvoegen van rijen, Cellen splitsen, ...) | ... en meer
Gebruik Kutools in je voorkeurstaal – ondersteunt Engels, Spaans, Duits, Frans, Chinees en meer dan40 andere talen!

Verbeter je Excel-vaardigheden met Kutools voor Excel en ervaar ongeëvenaarde efficiëntie. Kutools voor Excel biedt meer dan300 geavanceerde functies om je productiviteit te verhogen en tijd te besparen. Klik hier om de functie te kiezen die je het meest nodig hebt...


Office Tab brengt een tabbladinterface naar Office en maakt je werk veel eenvoudiger

  • Activeer tabbladbewerking en -lezen in Word, Excel, PowerPoint, Publisher, Access, Visio en Project.
  • Open en maak meerdere documenten in nieuwe tabbladen van hetzelfde venster, in plaats van in nieuwe vensters.
  • Verhoog je productiviteit met50% en bespaar dagelijks honderden muisklikken!

Alle Kutools-invoegtoepassingen. Eén installatieprogramma

Kutools for Office-suite bundelt invoegtoepassingen voor Excel, Word, Outlook & PowerPoint plus Office Tab Pro, ideaal voor teams die werken met Office-toepassingen.

Excel Word Outlook Tabs PowerPoint
  • Alles-in-één suite — invoegtoepassingen voor Excel, Word, Outlook & PowerPoint + Office Tab Pro
  • Eén installatieprogramma, één licentie — in enkele minuten geïnstalleerd (MSI-ready)
  • Werkt beter samen — gestroomlijnde productiviteit over meerdere Office-toepassingen
  • 30 dagen volledige proef — geen registratie, geen creditcard nodig
  • Beste prijs — bespaar ten opzichte van losse aanschaf van invoegtoepassingen