Funktion fcmax nichtdefiniert, wenn 1. Wert des Feldes nicht defin

15/10/2007 - 10:02 von B_Kleine | Report spam
Die folgende Funktion liefert das Maximum einer Liste, allerdings nur, wenn
der erste Wert existiert:

Option Compare Database
Option Explicit


Public Function fcmax(ParamArray Werte() As Variant) As Variant
Dim lIndex As Long

If (UBound(Werte) >= 0) Then
fcmax = Werte(0)
For lIndex = 1 To UBound(Werte)
If (Werte(lIndex) > fcmax) Then fcmax = Werte(lIndex)
Next lIndex
End If
End Function


Aufgerufen mit

MaxBili1: fcmax([Bili1_1];[Bili1_2];[Bili1_3];[Bili1_4];[Bili1_5])

gibt es nur dann ein Ergebnis, wenn die erste Variable in der Liste auch
existiert, ansonsten gibt es ein leeres Ergebnis.

Ich würde gerne wissen, warum das so ist und wie man die Funktion àndern
muss, dass auch dann ein Ergebnis erhalten wird, wenn der erste Werte nicht
existiert, dafür aber einer der übrigen.

Danke für alle Hilfe!
 

Lesen sie die antworten

#1 Mark Doerbandt
15/10/2007 - 10:14 | Warnen spam
Hallo,

B_Kleine:

Public Function fcmax(ParamArray Werte() As Variant) As Variant
Dim lIndex As Long

If (UBound(Werte) >= 0) Then
fcmax = Werte(0)
For lIndex = 1 To UBound(Werte)
If (Werte(lIndex) > fcmax) Then fcmax = Werte(lIndex)
Next lIndex
End If
End Function

Aufgerufen mit

MaxBili1: fcmax([Bili1_1];[Bili1_2];[Bili1_3];[Bili1_4];[Bili1_5])

gibt es nur dann ein Ergebnis, wenn die erste Variable in der Liste auch
existiert, ansonsten gibt es ein leeres Ergebnis.



Schau Dir mal in der Online-Hilfe das Stichwort "Nz-Funktion" an.

Gruss - Mark

Informationen fuer Neulinge in den Access-Newsgroups unter
http://www.doerbandt.de/Access/Newbie.htm

Bitte keine eMails auf Newsgroup-Beitràge senden.

Ähnliche fragen