Imprimir tabla dinámica por cada cambio en el filtro del encabezado

Necesito una macro para poder imprimir la tabla dinámica automáticamente por cada valor en el filtro del encabezado, alguien me puede apoyar

1 Respuesta

Respuesta
1

.

Buenas, Fernando

Si te hubiera entendido correctamente, tienes una tabla dinámica y quieres que se imprima una hoja con los datos de cada elemento del campo que tienes en area de Filtros. Por ejemplo:

En este ejemplo querrías que se seleccionen e impriman todos y cada uno de los elementos del campo NEGOCIO.

Pues bien, si así fuera, accede al Editor de VBA (Atajo: Alt + F11), e insert un módulo - si no tuvieras uno ya- y pega el siguiente código:

Sub PRNTabD()
'Fernando, define las siguiente variables para que funcione
CeldaIni = "A1" ' dirección de la celda donde inicia tu tabla dinámica
CampoSel = "NEGOCIO" ' Nombre del campo o filtro de encabezado
HojaTD = ActiveSheet.Name
Set fjaTabDin = Worksheets(HojaTD).Range("A1").PivotTable
For Each fjaTDitem In fjaTabDin.PivotFields(CampoSel).PivotItems
    fjaTabDin.PivotFields(CampoSel).ClearAllFilters
    fjaTabDin.PivotFields(CampoSel).CurrentPage = fjaTDitem.Name
    ActiveWindow.SelectedSheets.PrintOut Copies:=1
Next
Set fjaTabDin = Nothing
End Sub

Verás que hay un par de variables que deberías cambiar para adaptar la rutina a tu Tabla Dinámica.

.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas