bueno aqui les muestro el codigo que estoy empleando:
Código:
  
bueno cabe destacar que antes de mostrar el reporte y al realizar la consulta esta seguarda en una tabla temporal y de ahi se va al reporte.vnumero = Trim(Label4.Caption)
rancho = Trim(predio)
Set rst = dbs.OpenRecordset("select * from fertilizacion where numero like '" & vnumero & "'")
If rst.RecordCount = 0 Then
    
   dbs.Execute "INSERT INTO fertilizacion(numero,prom1parto,predio) values('" & Trim(vnumero) & "','" & Trim(total) & "','" & Trim(rancho) & "')"
    
    
ElseIf rst.RecordCount = 1 Then
    dbs.Execute "UPDATE fertilizacion set numero='" & Trim(vnumero) & "',prom1parto='" & Trim(total) & "',predio='" & Trim(rancho) & "'where numero= '" & vnumero & "'"
End If
base.Open "DRIVER={Microsoft Access Driver (*.mdb)};dbq=" & App.Path & "\bdrancho.mdb", , "fertilizacion"
Set rs = base.Execute("select * from fertilizacion where numero='1'")
With DataReport51
    With DataReport51.Sections("Sección2")
     ' Encabezado de Informe
      Set .Controls("Image2").Picture = LoadPicture(App.Path & "\logo.jpg")
    .Controls.Item("Etiqueta14").Caption = frmPrincipal.Label4.Caption
    .Controls.Item("Etiqueta15").Caption = frmPrincipal.Label5.Caption
    .Controls.Item("Etiqueta20").Caption = predio
    .Controls.Item("Etiqueta22").Caption = Combo2.Text
    .Controls.Item("Etiqueta10").Caption = Combo1.Text
    End With
        
      With DataReport51.Sections("Sección1").Controls
        .Item("txttasa").DataField = rs("tasa").Name
        .Item("txtvacas").DataField = rs("vacas").Name
        .Item("txtvaquillas").DataField = rs("vaquillas").Name
        .Item("txttotal").DataField = rs("total").Name
           End With
     Set .DataSource = rs
       .Refresh
       .Show
        
  End With
alguien podria ayudarme a como hacer que me muestre los datos consultados sin necesidad de abir 2 veces el reporte. es como refrescar la base de datos?? espero puedan ayudarme y les agradezco de antemano y les envio un cordial saludo..
 
 
 
