AW: arrayformel-knacknuss
21.07.2004 18:38:54
Hannes
'Füg dies in ein Modul ein, und es wird funken :)
' (Herbers Excel-Forum scheint keine Public Functions zu mögen ...)
https://www.herber.de/bbs/user/8769.xls
Option Explicit
Public
Function Hannes(ParamArray Bereich()) As Variant
'Immer Links steht ein ja oder nein,
'wenn ja, dann ist der rechte wert zu nehmen
'von allen werten ist das Minimum zu finden
On Error GoTo OOps:
Application.Volatile (True)
Dim i As Long, MyArray() As String, z As Variant
Dim Schalter As Boolean, DoIt As Boolean, Minimum As Double
Minimum = 1E+99 'Alles was er findet muß kleiner sein, außer er findet nix
Schalter = False 'Im Falle von VB eigentlich nicht notwendig ...
For i = 0 To UBound(Bereich())
For Each z In Bereich(i)
If Schalter Then
Schalter = False
If DoIt Then
If Minimum > z Then Minimum = z
End If
Else
Select Case LCase(z)
Case "ja", "nein"
Schalter = True
If LCase(z) = "ja" Then DoIt = True
Case Else
Hannes = "Falsch, weil die Vorgabe eine andere war (nach JEDEM 'ja' oder 'nein' folgt ein Wert)"
Exit Function
End Select
End If
Next z
Next i
Hannes = Minimum
Exit Function
OOps:
Hannes = "Es ist ein Fehler aufgetreten?"
End Function