Microsoft Excel

Excel und VBA: Formeln, Programmierung, Lösungen

Die Excel/VBA-Beispiele

Thema

Maximalwert für Wochenenden und Feiertage ermitteln

Gruppe

Max

Problem

Es soll der Maximalwert einer Datenreihe ermittelt werden, bei dessen Werten in der Datumsspalte es sich um Wochenenden oder Feiertage handelt.

Lösung
Über die nachfolgende benutzerdefinierte Funktion. Eingabesyntax: =specialmax(A1:A31;A40:A50;2)

StandardModule: Modul1

Function SpecialMax(rngA As Range, rngB As Range, iCol As Integer)
   Dim rng As Range
   Dim var As Variant
   Dim dValue As Double
   For Each rng In rngA.Cells
      var = Application.Match(CDbl(rng.Value), rngB, 0)
      If Not IsError(var) Or WorksheetFunction.Weekday(rng.Value, 2) > 5 Then
         If rng.Offset(0, 2).Value > dValue Then
            dValue = rng.Offset(0, iCol).Value
         End If
      End If
   Next rng
   SpecialMax = dValue
End Function