Ho un problema con il comando di un pulsante in programmazione Basic.

Allora, il codice:

codice:
MSFlexGrid1.Col = 1
MSFlexGrid1.Row = 1
datomax = Val(MSFlexGrid1.Text)

For indice = 1 To Val(Text3.Text)
    MSFlexGrid1.Row = indice
    dato1 = Val(MSFlexGrid1.Text)
    MSFlexGrid1.Row = indice + 1
    dato2 = Val(MSFlexGrid1.Text)
    If dato1 > dato2 Then
        If dato1 > datomax Then
            datomax = dato1
            Label3.Caption = datomax
        End If
    End If
Next indice
funziona benissimo e mi trova il valore massimo tra N valori inseriti in una griglia.

Il codice

codice:
MSFlexGrid1.Col = 1
MSFlexGrid1.Row = 1
datomax = Val(MSFlexGrid1.Text)

For indice = 1 To Val(Text3.Text)
    MSFlexGrid1.Row = indice
    dato1 = Val(MSFlexGrid1.Text)
    MSFlexGrid1.Row = indice + 1
    dato2 = Val(MSFlexGrid1.Text)
    If dato1 < dato2 Then
        If dato1 < datomax Then
            datomax = dato1
            Label3.Caption = datomax
        End If
    End If
Next indice
dovrebbe funzionare allo stesso modo ma trovando il valore minimo tra gli stessi valori inseriti nella stessa griglia.

Il primo codice (ricerca massimo) funziona, ma la ricerca del minimo (secondo codice) non va.
Dove può stare l'errore???

Il codice completo è:

codice:
Private Sub Command1_Click()
MSFlexGrid2.Row = Val(Text1.Text)
      If Text1.Text <> "" Then
        MSFlexGrid2.Col = 0
        MSFlexGrid2.Text = Text1.Text
        End If
      If Text2.Text <> "" Then
        MSFlexGrid2.Col = 1
        MSFlexGrid2.Text = Text2.Text
        End If
End Sub

Private Sub Command2_Click()
 MSFlexGrid1.Row = Val(Text1.Text)
      If Text1.Text <> "" Then
        MSFlexGrid1.Col = 0
        MSFlexGrid1.Text = Text1.Text
        End If
      If Text2.Text <> "" Then
        MSFlexGrid1.Col = 1
        MSFlexGrid1.Text = Text2.Text
        End If
      

End Sub

Private Sub Command3_Click()

MSFlexGrid1.Col = 1
MSFlexGrid1.Row = 1
datomax = Val(MSFlexGrid1.Text)

For indice = 1 To Val(Text3.Text)
    MSFlexGrid1.Row = indice
    dato1 = Val(MSFlexGrid1.Text)
    MSFlexGrid1.Row = indice + 1
    dato2 = Val(MSFlexGrid1.Text)
    If dato1 < dato2 Then
        If dato1 < datomax Then
            datomax = dato1
            Label3.Caption = datomax
        End If
    End If
Next indice

End Sub

Private Sub Command4_Click()

MSFlexGrid1.Col = 1
MSFlexGrid1.Row = 1
datomax = Val(MSFlexGrid1.Text)

For indice = 1 To Val(Text3.Text)
    MSFlexGrid1.Row = indice
    dato1 = Val(MSFlexGrid1.Text)
    MSFlexGrid1.Row = indice + 1
    dato2 = Val(MSFlexGrid1.Text)
    If dato1 > dato2 Then
        If dato1 > datomax Then
            datomax = dato1
            Label3.Caption = datomax
        End If
    End If
Next indice

End Sub

Private Sub Form_Load()

Dim Num As Integer

MSFlexGrid1.ColWidth(0) = 900
MSFlexGrid1.ColWidth(1) = 1000
 
MSFlexGrid1.Row = 0
          
MSFlexGrid1.Col = 0
MSFlexGrid1.Text = "Posizione"
MSFlexGrid1.Col = 1
MSFlexGrid1.Text = "Numero"
MSFlexGrid1.Col = 0
    
    For Num = 1 To 10
        MSFlexGrid1.Row = Num
        MSFlexGrid1.Text = Num
       
    Next Num
    
    
        
End Sub