Come suggeritomi da alka posto il quesito in un nuovo post.

Sto implementando in un gestionale una sorta di scadenziario che mi faccia la differenza tra la data odierna e la data della scadenza, che si va a prendere dalla seconda colonna di un datagrid che contiene la lista delle date delle scadenze, il costo e la causale.

Il codice che sto utilizzando è il seguente:
codice:
    Dim dataOggi As Variant
    Dim dataScadenza As Variant
    Dim dataDifferenza As Long
    Dim messaggio As Integer
    Dim messaggio2 As Integer
    
    dataOggi = Date
    Text1.Text = dataOggi
    
    dataScadenza = DataGrid1.Columns(1)
    Text2.Text = dataScadenza
        
    dataDifferenza = DateDiff("d", dataOggi, dataScadenza)
    Text3.Text = dataDifferenza
    
    If dataDifferenza < 4 Then
        messaggio = MsgBox("Attento! Hai una scadenza a breve", vbOKOnly, "Attenzione")
    End If
    
    If dataDifferenza <= 0 Then
            messaggio2 = MsgBox("Ciao", vbOKOnly)
    End If
Il problema è il seguente: vorrei che ci fosse un ciclo che leggesse il primo valore della colonna "Data" nel dataGrid, lo confrontasse con dataOggi, e se inferiore ai tre giorni, messaggio, altrimenti passa al sussessivo record, confronto, se minore dei tre giorni, messaggio, altrimenti successivo e così via per tutti.
Come si scrive questo maleddetto ciclo??? Sto diventando scemo del tutto!!!:master::master:


Poi quando una data è stata superata vorrei che non mi venisse più calcolata; anche qui richiedo il vostro aiuto!!!

Spero di essere stato chiaro, altrimenti fatemelo sapere, che cercherò di spiegare meglio la situazione.

In parole povere mi servirebbe una mano nel fare il ciclo e sistemare a dovere i due messaggi per farli apparire solo quando veramente servono.

Intanto grazie infinite a tutti coloro che mi aiuteranno!!!

Aspetto con ansia Vostre notizie!!!