He encontrado una solución para esto, pero si alguien tiene un limpiador forma de hacerlo estaría interesado/agradecido.

Tengo dos cajas en una hoja de cálculo, llamada DateFrom y DateTo para su uso con un filtro de Fecha en una tabla dinámica. Ambos están en el formato DD/MM/AAAA. Los datos que se introducen en la tabla es también en este formato. La tabla dinámica también devuelve las fechas en el mismo formato. Todos mis valores están en inglés del reino unido y he intentado esto en una máquina separada con los mismos resultados.

Yo, a continuación, utilice el código siguiente para alimentar a la tabla dinámica:

ActiveSheet.PivotTables("Pivot").PivotFields("Date").PivotFilters. _
    Add Type:=xlDateBetween, Value1:=Range("DateFrom").Value, Value2:=Range("DateTo").Value

Lee el código de los dos células como una cadena de texto y, a continuación, se aplica esto a la tabla dinámica como si fueran de NOSOTROS formato (MM/DD/AAAA). Ridículo!

Esto es cómo llegué a su alrededor:

Que yo tenía más dos células mirando estas dos células en formato numérico y dirigido el código en estos dos células de lugar. No estoy seguro acerca de cualquier de ustedes, pero yo iba a luchar para convertir cualquier fecha en numérico en mi cabeza…!

Si usted tiene una solución simplificada y/o explicación a esta absoluta locura yo estaría muy agradecido!

OriginalEl autor JJ Moore | 2014-04-08

1 Comentario

  1. 6

    De hecho, esto es extraño. He reproducido el problema con Excel 2007 y alemana de la configuración regional.

    Sin embargo, cuando la conversión de los valores de fecha a Longs usando CLng, todo funciona:

    ActiveSheet.PivotTables("Pivot").PivotFields("Date").PivotFilters. _
    Add Type:=xlDateBetween, Value1:=CLng(Range("DateFrom").Value), Value2:=CLng(Range("DateTo").Value)
    Perfecto! Muchas gracias por) demostrando que no estaba volviendo loco y b) una buena solución.

    OriginalEl autor MP24

Dejar respuesta

Please enter your comment!
Please enter your name here