Não sei se entendi exatamente a tua pergunta, mas neste exemplo eu somo a quantidade de horas no numa variavel, como se foce um contador!!
Public Sub dados_grid()
Dim ab As Integer
msflex_data.Clear
msflex_data.Rows = 2
alterna = 1 ' serve para o loop lá em baixo para colorir a grid
contador = 0 ' serve para discriminar a linha para colorir
cont = 0
For ab = 0 To 3
msflex_data.Col = cont
msflex_data.Row = 0
msflex_data.CellForeColor = &HFFFFFF
msflex_data.CellFontBold = True
msflex_data.CellFontName = "Comic Sans MS"
cont = cont + 1
Next
msflex_data.ColWidth(0) = 950 '************************'
msflex_data.ColWidth(1) = 1050 ' '
msflex_data.ColWidth(2) = 970 ' Configura a flex '
msflex_data.ColWidth(3) = 4680 '
msflex_data.ColAlignment(0) = flexAlignLeftCenter '
msflex_data.ColAlignment(1) = flexAlignLeftCenter '
msflex_data.ColAlignment(2) = flexAlignLeftCenter '
msflex_data.TextMatrix(0, 0) = "Atualizado" ' '
msflex_data.TextMatrix(0, 1) = "Dia" ' '
msflex_data.TextMatrix(0, 2) = "Quantidade" '************************'
msflex_data.TextMatrix(0, 3) = "Obs.:"
rs_hora.Open "SELECT * FROM tb_horas WHERE matric = " & lbl_matric & " ORDER BY data_da_hora", conn, adOpenKeyset, adLockOptimistic
If Not rs_hora.BOF Then
rs_hora.MoveMin
Else
rs_hora.Close
Exit Sub
End If
msflex_data.Rows = 2
cont = msflex_data.Rows - 1
soma = "00:00:00"
msflex_data.Rows = msflex_data.Rows - 1
Do While Not rs_hora.EOF
msflex_data.Rows = msflex_data.Rows + 1
If IsNull(rs_hora("data_inserida")) = False Then
msflex_data.TextMatrix(cont, 0) = rs_hora("data_inserida")
End If
If IsNull(rs_hora("data_da_hora")) = False Then
msflex_data.TextMatrix(cont, 1) = rs_hora("data_da_hora")
End If
If IsNull(rs_hora("quantidade")) = False Then
msflex_data.TextMatrix(cont, 2) = rs_hora("quantidade")
End If
msflex_data.TextMatrix(cont, 3) = rs_hora("obs")
soma = soma + rs_hora("quantidade")
cont = cont + 1
rs_hora.MoveNext
Loop
linha = cont
rs_confere.Open "SELECT * FROM tb_professor WHERE matric = " & lbl_matric, conn, adOpenKeyset, adLockOptimistic
If Not rs_con.BOF Then
If (rs_con("total_horas") <> soma) Or (IsNull(rs_con("total_horas")) = True) Then
rs_con("total_horas") = soma
rs_con.Update
End If
msflex_data.AddItem "Total", cont
msflex_data.TextMatrix(cont, 2) = rs_con("total_horas")
msflex_data.Row = cont
cont = 0
For ab = 0 To 3
msflex_data.Col = cont
msflex_data.CellBackColor = &HC00000
msflex_data.CellForeColor = &HFFFFFF
cont = cont + 1
Next
End If
rs_confere.Close
rs_hora.Close
End Sub