Aqui esta o meu codigo Cardoso
Private Sub Form_Load()
Dim rscmdNav As New ADODB.Recordset
Dim rscmdTrans As New ADODB.Recordset
Dim FrmAux As New FrmRelVEFCR9
Dim strSelect As String
Dim V_strFormula As String
With Me
.Top = 450
.Left = (Screen.Width / 2) - (.Width / 2)
End With
Screen.MousePointer = vbHourglass
CR9.ReportSource = RptVEF
RptVEF.Database.Tables.Item(1).Location = "C:Intertek" & "Intertek.mdb"
strSelect = "Select p.CERTIF_ID, n.SHIPS_ID,n.NAVIO_IDSEF "
strSelect = strSelect & " FROM CERTIFICADO p,REL_SHIPS_EXP n"
strSelect = strSelect & " Where p.CERTIF_ID=n.CERTIF_ID"
strSelect = strSelect & " AND p.CERTIF_ID=" & CDbl("0" & FrmRelVEF.LblVef_ID.Caption)
rscmdNav.Open strSelect, EnvTek.CnTek, adOpenForwardOnly, adLockReadOnly
strSelect = rscmdNav.RecordCount
Printer.Orientation = 1 ' Set the printer orientation, this is just something I like to do
strSelect = "Select p.CERTIF_ID, n.NAVIO_ID "
strSelect = strSelect & " FROM CERTIFICADO p,REL_NAV_TRANSB n"
strSelect = strSelect & " Where p.CERTIF_ID=n.CERTIF_ID"
strSelect = strSelect & " AND n.CERTIF_ID=" & CDbl("0" & FrmRelVEF.LblVef_ID.Caption)
rscmdTrans.Open strSelect, EnvTek.CnTek, adOpenForwardOnly, adLockReadOnly
strSelect = rscmdTrans.RecordCount
While Not rscmdTrans.EOF
V_strFormula = "{CERTIFICADO.CERTIF_ID} =" & CDbl("0" & FrmRelVEF.LblVef_ID.Caption)
V_strFormula = V_strFormula & " AND {REL_NAV_TRANSB.NAVIO_ID}=" & CDbl("0" & rscmdTrans!NAVIO_ID)
RptVEF.RecordSelectionFormula = V_strFormula
' Clear all saved changes and refresh report
CR9.DisplayTabs = False ' don't display the tabs on the top of the crystal report
CR9.ViewReport ' Show the report in the the crystal viewer
CR9.Zoom 1 ' Set zoom to page width
rscmdTrans.MoveNext
FrmAux.Show
Wend
rscmdNav.Close
rscmdTrans.Close
Screen.MousePointer = vbNormal ' Set the mouse pointer back to normal
End Sub
Da forma que esta quando eu chamo o Formulario instanciado FrmAux.Show, a execucao do programa volta para a linha do Form Load e tudo e executado novamente desde o inicio.
O que eu quero e que apos o MoveNext, outro formulario seja aberto e com novos registros, pois como eu disse eu tenho que gerar N relatorios a partir de um so e esses relatorios dependem de condicoes, logo tenho que abrir o primeiro com uma condicao dai MoveNext, vou para a segunda condicao e abro o segundo relatorio em um novo Form, depois vou para o terceiro,quarto e assim por diante.
Muito obrigado e um Abraco