Condición de fecha en excel

Quisiera usar una fórmula condicional que me pase información de una hoja a otra teniendo en cuenta el mes de la celda; es decir en a1 tengo 23/3/2021, en a2 24/3/2021... Etc a5 3/4/2021 ... Que me pase la información del mes de marzo... Y así... =IF(Hoja1!A:A=(fecha) ) no se como se pondría ahi

1 Respuesta

Respuesta
1

Puedes poner los nombres de las hojas y un ejemplo de lo que tienes en cada hoja, qué resultado quieres y en dónde lo tienes.

Sería genial si lo explicas con imágenes.

Esta es la primera hoja, quiero que lo que corresponde al mes de mayo me lo pase a la hoja que dice mayo... (lo seleccionado) en una fórmula. 

Con una sola fórmula no es posible. Tendrías que crear decenas de fórmulas matriciales.

Por ejemplo, si en la hoja Diario tienes 100 registros con 8 columnas, entonces tendrías que hacer 800 fórmulas en la hoja Mayo y 800 fórmulas en Junio y 800 fórmulas en Julio...


Una opción práctica y recomendable, es que una macro copie los registros de mayo en la hoja "Mayo", los de junio en la hoja "Junio", etc


Otra opción es que hagas una tabla dinámica o filtres fecha, copies y pegues los datos en su correspondiente hoja.


Si te decides por la macro, con gusto te ayudo a hacerla.

¡Gracias! muy buena tu explicación. Pensé que era más fácil con fórmula , sin embargo, es más complicado. Me gusta lo de la macro... Podrías colaborarme.

Tu información tiene encabezados, ¿en cuál fila está?

Y otro detalle:

Realmente tus hojas se llaman "Mayo", "Junio", "Julio", etc. Esto es importante conocer, porque en la fecha tienes 15/05/2021 y debo convertir 05 a "Mayo", por eso muy importante que me digas exactamente cómo se llaman las hojas.

Si tiene encabezados : Nombre, Apellido, CC, Documento, Valor .... etc son como 10.

Y si mis hojas tienen los nombres de los meses... exactamente

Unos detalles más.

Responde en el siguiente orden.

1. En cuál fila están los encabezados.

2. La información de marzo se copia en la hoja "marzo", ¿la pego en la fila 2 o en la primer fila disponible?

Fila 1 están los encabezados.

Y la información se pega en la hoja a partir de la fila 2

Prueba lo siguiente:

Sub Copia_Por_Fecha()
  Dim i As Long
  Dim hoja As String
  '
  Application.ScreenUpdating = False
  With Sheets("DIARIO")
    For i = 21 To 32
      hoja = Format(CDate("01/" & i - 20 & "/" & Year(Date)), "mmmm")
      If Evaluate("ISREF('" & hoja & "'!A1)") Then
        Sheets(hoja).Cells.ClearContents
        .Range("A1").AutoFilter 1, i, xlFilterDynamic
        .AutoFilter.Range.EntireRow.Copy Sheets(hoja).Range("A1")
      End If
    Next
    .ShowAllData
  End With
  Application.ScreenUpdating = True
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas