Ragazzi...a me pare che il codice sia corretto, ma non riesco ad aggiornare
la MSHFlexGrid...sapreste aiutarmi ?

ecco il codice

tralascio la dichiarazione delle variabili mentre scrivo il codice, tanto
quella parte è giusta

Private Sub Form_Activate()

i = 0
saldoprogressivo = 0


qryestrattoconto = "SELECT IdPrinc, IdOpzione, Data_Op, IdImmobile,
Venditore, Acquirente, Indirizzo_Immobile, Descrizione,
NAssegno,Entrate,Uscite,SaldoProg,Controllato FROM EstrattoContoOpzioni
ORDER BY DATA_OP, IDPRINC"



Set miorecordset_ec = CreateObject("ADODB.RECORDSET")

miorecordset_ec.Open qryestrattoconto, objconn, adOpenStatic, 2

Set MSHFlexGrid1.DataSource = miorecordset_ec

MSHFlexGrid1.Refresh

MSHFlexGrid1.ColWidth(1) = 0

If miorecordset_ec.RecordCount > 0 Then

miorecordset_ec.MoveFirst
miorecordset_ec("SaldoProg") = miorecordset_ec("Entrate") -
miorecordset_ec("Uscite")
miorecordset_ec.Update
saldoprogressivo = miorecordset_ec("SaldoProg")
Do While Not miorecordset_ec.EOF
i = i + 1
If i > 1 Then
saldoprogressivo = saldoprogressivo +
miorecordset_ec("Entrate") - miorecordset_ec("Uscite")
miorecordset_ec("SaldoProg") = saldoprogressivo
miorecordset_ec.Update
End If
miorecordset_ec.MoveNext
Loop

miorecordset_ec.Requery

MSHFlexGrid1.Refresh

i = 1


If miorecordset_ec.RecordCount > 0 Then
miorecordset_ec.MoveFirst
Do While Not miorecordset_ec.EOF
If miorecordset_ec("Controllato") = "Vero" Then
With MSHFlexGrid1
.Row = i
If sceltaec = "Immobili" Then

For intcol = 1 To 13
.Col = intcol: .CellBackColor = vbRed
Next

ElseIf sceltaec = "Opzioni" Then

For intcol = 1 To 13
.Col = intcol: .CellBackColor = vbRed
Next

Else

For intcol = 1 To 14
.Col = intcol: .CellBackColor = vbRed
Next

End If

End With
End If

i = i + 1
miorecordset_ec.MoveNext
Loop

miorecordset_ec.Requery
MSHFlexGrid1.Refresh
righe = MSHFlexGrid1.Rows

End If

End If

MSHFlexGrid1.Refresh


End Sub