Jump to content

Hacer mas de 1 recordset de una misma tabla de acces para formulario Excel


Recommended Posts

Saludos, quisiera que me ayuden respecto a un problema que tengo con un reporte.

Tengo una tabla que contiene las siguientes donde almaceno la siguiente información: Fecha 1, pago 1, fecha 2, pago 2, fecha 3 y pago 3
Lo que necesito es que en un formulario en excel de consulta que tengo, en base a 2 textbox colocar el rango de fechas y haga la consulta en la base de datos de acuerdo a las columnas fecha 1, fecha 2 y fecha 3 y jale al listbox los datos de pagos 1, 2 y 3.

Esta es mi macro, pero solo hace consulta con la fecha 1

Agradezco de antemano su apoyo

Sub Consultacaja()
Call Conexion.Abrir_Rs
sql = "SELECT Correlativo, C_1, C_2, C_5, C_6, C_7, C_8, C_9, C_10, C_11, C_13, C_14, RUC, Resp FROM Tb_Registros  " & _
" WHERE C_2 Like '%" & UCase(Trim(Cmb_Suc)) & "%' AND C_1 BETWEEN #" & Format(CDate(Txt_FechaInicial.Value), "mm/dd/yyyy") & "# AND #" & Format(CDate(Txt_FechaFinal.Value), "mm/dd/yyyy") & "#"

rs.Open sql, cnn, 1, 1
'Rs.Open SQL, Cnn
If rs.RecordCount > 0 Then
With Me.ListBox1
.ColumnCount = 13  'Cantidad de columnas = cantidad de TextBoxes
.List = [A5:o5].Value 'Rango de datos "temporal" para que se cargue en el ListBox
.Clear
Do While rs.EOF = False
.AddItem
.List(.ListCount - 1, 0) = rs!Correlativo 'recibo
.List(.ListCount - 1, 1) = CDate(rs!C_1) 'fecha
.List(.ListCount - 1, 2) = rs!C_2 'tipo
.List(.ListCount - 1, 3) = rs!C_7 'tipo de ingreso
.List(.ListCount - 1, 4) = rs!RUC 'RUC
.List(.ListCount - 1, 5) = rs!C_8 'cliente
.List(.ListCount - 1, 6) = FormatNumber(rs!C_9, 2) 'total
.List(.ListCount - 1, 7) = FormatNumber(rs!C_10, 2) 'comision
.List(.ListCount - 1, 8) = FormatNumber(rs!C_13, 2) 'PAGO
.List(.ListCount - 1, 9) = FormatNumber(rs!C_14, 2) 'saldo pendiente
.List(.ListCount - 1, 10) = rs!C_6 'medio de pago
.List(.ListCount - 1, 11) = rs!C_5 'jalador
.List(.ListCount - 1, 12) = rs!Resp 'USUARIO

rs.MoveNext
Loop
'ListBox1.ColumnCount = 13
ListBox1.ColumnWidths = "55;55;50;60;60;90;50;50;50;50;55;50;50"
Txt_Registros.Text = ListBox1.ListCount
End With
Else
ListBox1.Clear
End If
Call Conexion.Cerrar_Rs
End Sub
 

Link to comment
Share on other sites

Hace 3 horas, CARLOS_11 dijo:

Saludos, quisiera que me ayuden respecto a un problema que tengo con un reporte.

Tengo una tabla que contiene las siguientes donde almaceno la siguiente información: Fecha 1, pago 1, fecha 2, pago 2, fecha 3 y pago 3
Lo que necesito es que en un formulario en excel de consulta que tengo, en base a 2 textbox colocar el rango de fechas y haga la consulta en la base de datos de acuerdo a las columnas fecha 1, fecha 2 y fecha 3 y jale al listbox los datos de pagos 1, 2 y 3.

Esta es mi macro, pero solo hace consulta con la fecha 1

Agradezco de antemano su apoyo

Sub Consultacaja()
Call Conexion.Abrir_Rs
sql = "SELECT Correlativo, C_1, C_2, C_5, C_6, C_7, C_8, C_9, C_10, C_11, C_13, C_14, RUC, Resp FROM Tb_Registros  " & _
" WHERE C_2 Like '%" & UCase(Trim(Cmb_Suc)) & "%' AND C_1 BETWEEN #" & Format(CDate(Txt_FechaInicial.Value), "mm/dd/yyyy") & "# AND #" & Format(CDate(Txt_FechaFinal.Value), "mm/dd/yyyy") & "#"

rs.Open sql, cnn, 1, 1
'Rs.Open SQL, Cnn
If rs.RecordCount > 0 Then
With Me.ListBox1
.ColumnCount = 13  'Cantidad de columnas = cantidad de TextBoxes
.List = [A5:o5].Value 'Rango de datos "temporal" para que se cargue en el ListBox
.Clear
Do While rs.EOF = False
.AddItem
.List(.ListCount - 1, 0) = rs!Correlativo 'recibo
.List(.ListCount - 1, 1) = CDate(rs!C_1) 'fecha
.List(.ListCount - 1, 2) = rs!C_2 'tipo
.List(.ListCount - 1, 3) = rs!C_7 'tipo de ingreso
.List(.ListCount - 1, 4) = rs!RUC 'RUC
.List(.ListCount - 1, 5) = rs!C_8 'cliente
.List(.ListCount - 1, 6) = FormatNumber(rs!C_9, 2) 'total
.List(.ListCount - 1, 7) = FormatNumber(rs!C_10, 2) 'comision
.List(.ListCount - 1, 😎 = FormatNumber(rs!C_13, 2) 'PAGO
.List(.ListCount - 1, 9) = FormatNumber(rs!C_14, 2) 'saldo pendiente
.List(.ListCount - 1, 10) = rs!C_6 'medio de pago
.List(.ListCount - 1, 11) = rs!C_5 'jalador
.List(.ListCount - 1, 12) = rs!Resp 'USUARIO

rs.MoveNext
Loop
'ListBox1.ColumnCount = 13
ListBox1.ColumnWidths = "55;55;50;60;60;90;50;50;50;50;55;50;50"
Txt_Registros.Text = ListBox1.ListCount
End With
Else
ListBox1.Clear
End If
Call Conexion.Cerrar_Rs
End Sub
 

 

PRUEBA.rar

Link to comment
Share on other sites

Así me ha funcionado:

sql = "SELECT Correlativo, C_1, C_2, C_5, C_6, C_7, C_8, C_9, C_10, C_11, C_13, C_14, RUC, Resp FROM Tb_Registros  " & _
      " WHERE C_2 Like '*" & UCase(Trim(Cmb_Suc)) & "*' AND C_1 BETWEEN #" & _
              Format(CDate(Txt_FechaInicial.Value), "mm/dd/yyyy") & "# AND #" & _
              Format(CDate(Txt_FechaFinal.Value), "mm/dd/yyyy") & "#"

 

Link to comment
Share on other sites

Ahora mismo, Antoni dijo:

Así me ha funcionado, solo he sustituido % por *:

sql = "SELECT Correlativo, C_1, C_2, C_5, C_6, C_7, C_8, C_9, C_10, C_11, C_13, C_14, RUC, Resp FROM Tb_Registros  " & _
      " WHERE C_2 Like '*" & UCase(Trim(Cmb_Suc)) & "*' AND C_1 BETWEEN #" & _
              Format(CDate(Txt_FechaInicial.Value), "mm/dd/yyyy") & "# AND #" & _
              Format(CDate(Txt_FechaFinal.Value), "mm/dd/yyyy") & "#"

 

 

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Ayúdanos a mejorar la comunidad

    • Donaciones recibidas este mes: 30.00 EUR
      Objetivo: 130.00 EUR
  • Files

  • Download Statistics

    • Files
      143
    • Comments
      87
    • Reviews
      25

    Latest File
    By pegones1

    4    0

  • Crear macros Excel

  • Posts

    • Hola a todos, Intento extraer en una sola función, una fecha que esta dentro de una cadena de texto y esta función extraiga únicamente la fecha. Adjunto un archivo como ejemplo, seria hacer en una sola celda los 4 pasos del archivo  Gracias de antemano Libro1.xlsx
    • Buenas noches. Quería preguntar si es posible incluir un buscador dentro de un dashboard teniendo en cuenta que solo quiero incluir algunos parámetros (nombre, DNI, Categoría y otro más, hasta un total de 4) de todos los que tiene la tabla dinámica situada en otra hoja. ¿Tengo que exportar todos los datos al propio dashboard? Mi idea es que todo los datos se mantengan en la una hoja y que en el dashboard (otra hoja) tan solo aparezcan los que cumplan con los requisitos que se incluyen en el propio buscador.......Es la primera pregunta que lanzo y quiero pedir disculpas porque he visto que hay que adjuntar archivo, pero tiene datos personales y por la protección de datos es imposible. Agradecería que me informaran si es posible hacer lo que pido y alguna referencia para poder estudiarla porque entiendo que será trabajoso pero me gusta aprender. Muchas gracias.
    • Ante todo dar las gracias por la acogida.  Soy Jose Mari y la verdad que llego a estos lugares con ganas de aprender mucho y sobre todo a resolver aquellas dudas que me vayan surgiendo. Tengo 47 años y soy profesor.  Saludos. 
    • Muchas gracias por toda tu ayuda JSDJSD, como le comenté a Israel hoy he solucionado el problema, pero seguiré investigando. Saludos cordiales!!!
    • Muchas gracias Israel por tus comentarios, todavía el proyecto no está en producción, así es que solo lo he probado yo y  tengo habilitadas las macros, hoy en la mañana agregué el siguiente código al formulario y solucioné el problema, de todas maneras voy a investigar porque me estaba ocurriendo porque al parecer no estaba cerrando Excel y solo cerraba el formulario y por esa razón no me resultaba, nuevamente te agradezco tu ayuda. Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer) ThisWorkbook.Save ThisWorkbook.Close  End Sub Saludos cordiales!!!!!!!!!!!!!!!!  
  • Recently Browsing

    • No registered users viewing this page.
×
×
  • Create New...

Important Information

Privacy Policy