PROBLEMA COM HORAS NO FLEXGRID
Bom dia,
Estou tentando trazer em um text a soma de horas de determinada coluna do flexgrid.
O código é o seguinte:
Private Sub SOMAR_Click()
Dim I As Integer
Dim TM As Integer
Dim HM() As String
Dim SomaH As String
With FGrid1
TM = 1
For I = 1 To FGrid1.Rows - 1
HM = Split(FGrid1.TextMatrix(I, 6), [Ô]:[Ô])
TM = TM + (CInt(HM(0) * 60) + CInt(HM(1)))
Next I
End With
Dim Min As Integer
Dim Hrs As Integer
Min = TM Mod 60
Hrs = (TM - Min) / 60
SomaH = Hrs & [Ô]:[Ô] & Format(Min, [Ô]00[Ô])
tothor.Text = SomaH
End Sub
Mas quando clico no botão para somar aparece o erro:
Run-time error: [ô]9[ô]:
Subscript out of range
Clico em Debug e o vb seleciona a linha: TM = TM + (CInt(HM(0) * 60) + CInt(HM(1)))
Não estou conseguindo resolver.
Estou tentando trazer em um text a soma de horas de determinada coluna do flexgrid.
O código é o seguinte:
Private Sub SOMAR_Click()
Dim I As Integer
Dim TM As Integer
Dim HM() As String
Dim SomaH As String
With FGrid1
TM = 1
For I = 1 To FGrid1.Rows - 1
HM = Split(FGrid1.TextMatrix(I, 6), [Ô]:[Ô])
TM = TM + (CInt(HM(0) * 60) + CInt(HM(1)))
Next I
End With
Dim Min As Integer
Dim Hrs As Integer
Min = TM Mod 60
Hrs = (TM - Min) / 60
SomaH = Hrs & [Ô]:[Ô] & Format(Min, [Ô]00[Ô])
tothor.Text = SomaH
End Sub
Mas quando clico no botão para somar aparece o erro:
Run-time error: [ô]9[ô]:
Subscript out of range
Clico em Debug e o vb seleciona a linha: TM = TM + (CInt(HM(0) * 60) + CInt(HM(1)))
Não estou conseguindo resolver.
você possui cabeçalho no flexgrid?
Não, somente os nomes das colunas.
Já consegui resolver o problema, é que quando o flexgrid trazia os dados ele colocava uma linha a mais em branco, por isso dava erro,
a coluna tinha um campo vazio, tirei essa linha no carregamento e o sistema funcionou.
Tópico encerrado , respostas não são mais permitidas