Nejdelší hodnota v poli

Funkce:
'Parametry FIRST a LAST indikují, která část pole se zpracuje.
'Defaultně je to první a poslední element.
'Pokud je zadána proměnná pro LONGESTINDEX, je vrácena
'hodnota indexu nejdelšího elementu.


Function ArrLongestItem(arr As Variant, _
   Optional ByVal First As Variant, _
   Optional ByVal Last As Variant, _
   Optional LongestIndex As Long) As Variant

   Dim index As Long
   Dim maxLength As Long

   If IsMissing(First) Then First = LBound(arr)
   If IsMissing(Last) Then Last = UBound(arr)

   ArrLongestItem = arr(First)
   maxLength = Len(ArrLongestItem)
   LongestIndex = First

   For index = First + 1 To Last
      If maxLength < Len(arr(index)) Then
         ArrLongestItem = arr(index)
         maxLength = Len(ArrLongestItem)
         LongestIndex = index
      End If
   Next

End Function

Zpět

Autor: The Bozena