Mi problemita es el siguiente: Tengo una base de datos donde la columna "A" contiene los datos de FECHA la columna "B" los datos de nombres y apellidos y la columna "C" contiene medidas por litros lo que quiero realizar es una macro que me deje realizar reportes entredós fechas especificas es decir una fecha inicial y una fecha final hasta el momento he hecho de todo
2 respuestas
Respuesta de Enrique Bernal
2
2
Enrique Bernal, Has tus preguntas de forma clara, cuando veas que un tema es muy...
No se si lo que necesites es una tabla dinámica, en lugar de una macro, ya que la tabla dinámica te permite escoger solo la información tal cual tu la filtres, no es como el autofiltro que solo te oculta las filas, la tabla dinámica se podría decir que borra el resto de la info, y solo mantiene la info según los criterios de selección En la pestaña Insertar - Tablas dinámicas, encuentras lo que te menciono
Hola buen día octavohokage De antemano te agradezco por el apoyo y tu pronta respuesta, lo que sucede es que estoy automatizando procesos para realizar reportes según dos fechas; una inicial y una final y me gustaría realizarlo por medio de un formulario que al introducir estas dos fechas me genere un listado en otro libro o plantilla para imprimir el informe, la parte de tablas dinámicas es excelente pero, mis jefesitos quieren que la mayoría de los reportes sean automáticos más no elaborados manualmente. octavohokage, te quedo en deuda por tu apoyo, espero que me puedas ayudar. Agradeciendo tu atención att; Palito jijijijijijii
Yo creo que lo mejor es una tabla dinámica por tiempos de respuesta y todo, pero en fin tu eres el usuario. Esta macro hace lo que pides pero para que funcione necesitas primero hacer lo siguiente 1)La hoja en la que tienes toda la info con fecha nombre y el resto se debe llamar Base1 2) Debes crear una hoja que se llame Reporte, en la que escribirás en A1:"Fecha Inicial", en A2 "Fecha Final". 3) En la Fila 4 de tu hoja Reporte debe colocar en el mismo orden que tienes en tu Hoja Base1, el encabezado de la info que vas a presentar es decir, Fecha, Nombre y el resto 4) Las fechas de Inicio y Fin las debes colocar en B1 y B2 respectivamente, luego inserta un botón para que corra la macro y listo Sub Reporte() Dim fe_Ini, Fe_Fin As Date Dim Comprobar, a Comprobar = True: a = 0 ' Inicializa variables. a = a + 1 Sheets("Reporte").Select Rows("5:35").Select Selection.ClearContents fe_Ini = Range("B1").Value Fe_Fin = Range("B2").Value Do ' Bucle externo. Do While a < 500 ' Bucle interno. Sheets("Base1").Select a = a + 1 ' Incrementa el contador. If Range("A" & a).Value = "" Then ' Si la condición es verdadera. Comprobar = False ' Establece el valor a False. Else If Range("A" & a) >= fe_Ini And Range("A" & a) <= Fe_Fin Then Rows(a).Select Selection.Copy Sheets("Reporte").Select Rows(k).Select ActiveSheet.Paste Sheets("Base1").Select Application.CutCopyMode = False Exit Do ' Sale del bucle interno. End If End If Loop Loop Until Comprobar = False ' Sale inmediatamente Sheets("Reporte").Select Range("A1").Select End Sub
4 comentarios
Ocultar comentarios
buen dia , tengo la misma necesidad de un buscador de datos entre fecha y fecha por lo cual me intereso este post ya elabore mi libro tal cual como aquí se indica pero no arroja ningún dato , no aparece ningún error al correr la macro simplemente no aparece ninguna respuesta, alguien que me pueda ayudar... se lo agradezco - Alfredo Perez
hola, que raro que falle. Se me ocurre que cambies esta parteDO While a <500pordo while <65000 - Enrique Bernal
Ya realice el cambio al código pero sigue sin mostrar el resultado, te puedo enviar mi archivo para que lo veas??? - Alfredo Perez
Yo la he probado y tampoco me va la he echo tal cual se especifica con esos datos y esos nombres de hoja y al lanzarla y pasar el depurador a la macro me marca Rows(k).Select
buen dia , tengo la misma necesidad de un buscador de datos entre fecha y fecha por lo cual me intereso este post ya elabore mi libro tal cual como aquí se indica pero no arroja ningún dato , no aparece ningún error al correr la macro simplemente no aparece ninguna respuesta, alguien que me pueda ayudar... se lo agradezco - Alfredo Perez
hola, que raro que falle. Se me ocurre que cambies esta parteDO While a <500pordo while <65000 - Enrique Bernal
Ya realice el cambio al código pero sigue sin mostrar el resultado, te puedo enviar mi archivo para que lo veas??? - Alfredo Perez
[email protected] - Enrique Bernal