Nån som har en kodsnutt som sorterar en array så att det bara finns en förekomst av varje värde kvar? Eller finns det nåt inbyggt i VB för detta? hej Hej Public Sub RemoveDup(ByRef sArray() As String) Hade det varit Smalltalk i st f VB så hade svaret varit:Sortera array
    
    
Det kanske är bättre att använda ett recordset om det finns nån inbyggd metod för det, nån som vet?Sv: Sortera array
    
    
En gammal fråga som får nyränesans med jämna mellanrum
Hämta ett gammalt prog som jag lagt ut för länge sen.
http://www.pellesoft.nu/upload/QuickSort.zip
sen får du gå genom denna array med FindDubblett
mvh
SvenSv: Sortera array
    
    
Ett exempel på en Funktion som kollar om det finns dubbletter
Du skickar hela Arrayen och ser till att den har rätt 
som i mitt exemel  "As String" du vill kanske vill ha As Double osv osv.
Private Function FindDubblett(inArray() As String) As Boolean
Dim i As Long, j As Long, lastItem As Long
Dim tmpStr As String
lastItem = UBound(inArray)
For i = LBound(inArray) To lastItem
tmpStr = inArray(i)
  For j = i + 1 To lastItem
   If tmpStr = inArray(j) Then
   'do youre stuf here
   FindDubblett = True
   Exit Function
   End If
 Next 'j
Next ' i
FindDubblett = False
End Function
mvh
SvenSv: Sortera array
    
    
    ' Denna sub tar bort dubbletter i en array
    Dim j As Long
    Dim k As Long
    Dim p As Long
    Dim q As Long
    Dim Nod() As String
    ReDim Nod$(UBound(sArray$))
    p = UBound(sArray$)    ' Högsta värdet
    q = 1
    For j = 1 To p
        DoEvents
        For k = 1 To q
            DoEvents
            If sArray$(j) = Nod$(k) Then
                Exit For
            Else
                If Nod$(k) = "" Then
                    Nod$(k) = sArray$(j)
                    q = q + 1
                    Exit For
                End If
            End If
        Next k
    Next j
    j = q - 1
    ReDim Preserve Nod$(j)
    ReDim Preserve sArray$(j)
    sArray$ = Nod$
    Erase Nod$
End SubSv: Sortera array
    
    
minArray asSet asSortedCollection
I första steget försvinner alla dubletter i andra steget sorteras det hela.
Vill man ha tillbaka arrayen slägger man bara till asArray.
Varför är det inte så enkelt i VB ???
- Hans