Macro que muestre datos de acuerdo a Fecha

Buenas tardes experto. Quisiera su ayuda en lo siguiente. Tengo una hoja de excel donde tengo los nombres de unos archivos. Necesito una macro que en el momento de registrar la fecha solo me muestre los archivos que cumplan determinada condición.

Ejemplo si le doy la fecha 2012/02/02

que me muestre la lista con los archivos que en la columna fecha tengan esta.

El excel en que estoy trabajando es 2007.

Espero me puedas colaborar

Un cordial saludo

RRincon

1 respuesta

Respuesta
1

Con gusto te colaboro, pero necesito que me digas más información,

1. Cuando dices "en el momento de registrar la fecha", ¿dónde quieres registrar la fecha? ¿En una celda o que la macro te la pida?, te recomiendo que la pongas en una celda con formato de fecha

2. Quieres que te los muestre en la misma hoja, ¿es decir que oculte las filas de los otros nombres de archivo que no tienen la misma fecha?

3. ¿En cuál columna está la fecha?

4. También dime en qué fila están los títulos y en qué fila empiezan tus datos

Saludos. Dam

Buenas tardes.

Muchas gracias por tu atención.

te voy a tratrar de aclarar las inquietudes para que me puedas ayudar:

1. la fecha , seria que la macro la pidiera.

2.Lo que quiero es que me muestre determinados filas cuando le de la fecha.

ejemplo si le doy 31/01/2013 , me muestre en el la hoja de calculo solo los archivos que contenga esa fecha.

mi formato es el siguiente:

en las columnas

a b d f g Archivo INTERFAZ Originador Periodicidad Tipo

08-RI1060 08-RI106020130117.TXT consorcio

Hola. muchas gracias por tu atención, voy a tratar de dibujarte mi formato

1. Me gustaría que la macro pidiera la fecha que.

2 que me muestre los datos en otra hoja y que los vaya acumulando dia a dia

el formato es el siguiente

A B C D

1 Archivo INTERFAZ Originador Periodicidad

2 CDD3180 CDD318020130117.TXT CONSORCIO DIARIO

3 08-PLC1010 08-PLC101020130131.TXT SUBSIDIO MENSUAL

4 OP1030 OP103020130115.TXT CONSORCIO QUINCENAL

NECESITO que en el momento de digitar la fecha valide si la periodicidad es diaria, mensual o quincenal y solo me muestre los archivos que cumplan la condición.

por ejemplo le doy la fea de fin de mes 31/01/2013 esta es mensual solo me debería mostrar las filas que corresponden a esa fecha

A B C D
1 Archivo INTERFAZ Originador Periodicidad

2 08-PLC1010 08-PLC101020130131.TXT SUBSIDIO MENSUAL

Ojala este ejemplo te de una visión de lo que necesito.

Y reitero mi agradecimiento

Saludos cordiales

Ricardo Rincón

Sigue las Instrucciones para un botón y ejecutar la macro
1. Abre tu libro de Excel
2. Para abrir Vba-macros y poder pegar la macro, Presiona Alt + F11
3. En el menú elige Insertar / Módulo
4. En el panel del lado derecho copia la macro
5. Ahora para crear un botón, puedes hacer lo siguiente:
6. Inserta una imagen en tu libro, elige del menú Insertar / Imagen / Autoformas
7. Elige una imagen y con el Mouse, dentro de tu hoja, presiona click y arrastra el Mouse para hacer grande la imagen.
8. Una vez que insertaste la imagen en tu hoja, dale click derecho dentro de la imagen y selecciona Asignar macro / Selecciona: filtrarxfecha
9. Aceptar.
10. Para ejecutarla dale click a la imagen.

Sub fitraxfecha()
'por.dam
ActiveSheet.AutoFilterMode = False
fecha = InputBox(Prompt:="Escribe la fecha en formato: AAAAMMDD: ")
With Range("B:B")
    Set busca = .Find(fecha)
    If Not busca Is Nothing Then
        Columns("A:D").Select
        Selection.AutoFilter
        Selection.AutoFilter Field:=2, Criteria1:="=*" & fecha & "*", Operator:=xlAnd
    Else
        MsgBox "No hay datos con esa fecha", vbInformation, "BUSCAR"
    End If
    Range("A1").Select
End With
End Sub

Saludos.Dam
Si es lo que necesitas.

Buenas noches. Gracias por tu colaboración. Pero al digitarlo la fecha , me esta arrojando mensaje de que la fecha no existe y esta si existe en el formato

le estoy digitando la fecha asi:

2013/01/17

Gracias por tu paciencia.

Tienes que poner la fecha en este formato

Escribe la fecha en formato: AAAAMMDD

La fecha es necesaria en ese formato, porque en los nombres tienes algo parecido a esto:

"OP103020130115.TXT"

La fecha que viene en el nombre del archivo es 20130115, que viene en formato AAAAMMDD

Pero si prefieres puedes poner la diagonal o el guión, cambia la macro por esta

Sub fitraxfecha()
'por.dam
ActiveSheet.AutoFilterMode = False
fecha = InputBox(Prompt:="Escribe la fecha en formato: AAAAMMDD: ")
If InStr(1, fecha, "/") Then fecha = Replace(fecha, "/", "")
If InStr(1, fecha, "-") Then fecha = Replace(fecha, "-", "")
With Range("B:B")
Set busca = .Find(fecha)
If Not busca Is Nothing Then
Columns("A:D").Select
Selection.AutoFilter
Selection.AutoFilter Field:=2, Criteria1:="=*" & fecha & "*", Operator:=xlAnd
Else
MsgBox "No hay datos con esa fecha", vbInformation, "BUSCAR"
End If
Range("A1").Select
End With
End Sub

Prueba nuevamente.

Lo de enviar la información filtrada a otra hoja, no estaba en tu pedticón original, podrías revisar primero esta parte y si queda bien, podrías crear otra pregunta por cada petición nueva.

Saludos. Dam

No se que pasa pero le doy la fecha y me sigue saliendo "No hay Datos en esta Fecha"

Lo único que quiero es que me filtre los archivos que cumplan con la condición, de acuerdo a un cronograma

para no tener que hacer el filtro manualmente.

Saludos

RAR

Tus datos están así

A B C D
1 Archivo INTERFAZ Originador Periodicidad
2 08-PLC1010 08-PLC101020130131.txt subsidio mensual

Intenta por un ejemplo como este y ejecuta la macro

Saludos. Dam

Muchas gracias , muy bien , te estaré enviado la pregunta para filtrar los datos a otra hoja.

Muchas gracias.

Ricardo Rincón

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas