Olá todos!
Tenho um problema com a execução de um Loop dentro de outro Loop.
O primeiro Loop percorre um Recordset (Rs1). O segundo Loop também percorre outro Recordset (Rs2).
Ao encontrar o primeiro registro em Rs1, o segundo Loop é executado para somar valores de um campo através do contador i.
O problema: o segundo Loop é executado apenas uma vez, quando o primeiro Loop é dispado e encontra o registro inicial de Rs1. Quando o Loop 1 vai para o segundo registro de Rs1, o Loop 2 não é mais executado.
O código está assim:
Tenho um problema com a execução de um Loop dentro de outro Loop.
O primeiro Loop percorre um Recordset (Rs1). O segundo Loop também percorre outro Recordset (Rs2).
Ao encontrar o primeiro registro em Rs1, o segundo Loop é executado para somar valores de um campo através do contador i.
O problema: o segundo Loop é executado apenas uma vez, quando o primeiro Loop é dispado e encontra o registro inicial de Rs1. Quando o Loop 1 vai para o segundo registro de Rs1, o Loop 2 não é mais executado.
O código está assim:
- Código:
j = 0
Do While Not rs1.EOF
i = 0
Do While Not rs2.EOF
If Format(datAfIni, "mm/yyyy") = Format(rs1!Competencia, "mm/yyyy") Then
If Format(datAfIni, "mm/yyyy") = Format(datAfFim, "mm/yyyy") Then
intDAfast = Day(datAfFim) - Day(datAfIni) + 1
Else
intDAfast = Day(DateSerial(Year(datAfIni), Month(datAfIni) + 1, 0)) - Day(datAfIni) + 1
End If
ElseIf Format(datAfFim, "mm/yyyy") = Format(rs1!Competencia, "mm/yyyy") Then
intDAfast = Day(datAfFim)
Else
intDAfast = 0
End If
i = i + intDAfast
rs2.MoveNext
Loop
intDias = IIf(rs1!Cdias - i >= 15, 1, 0)
j = j + intDias
rs1.MoveNext
Loop