Colección de citas famosas - Slogan de motivación - Cómo imprimir automáticamente por departamento en excel vba

Cómo imprimir automáticamente por departamento en excel vba

¿Sub? Imprimir por departamento()

¿Oscuro? ¿Dic? ¿Como? Objetivo

¿Oscuro? ¿I? ¿Como? Entero,? r? ¿Como? Entero

¿Atenuado? strPart

r? =?rango(" A65536 "). final (xlArriba). ¿Fila

Configuración? ¿Dic? =?Createobject("Script. 'Crea un objeto de diccionario.

¿Para qué? ¿Yo? =?2?¿Adónde ir? r 'Agrega la primera columna de datos al valor clave del diccionario.< /p >

Dic(CStr(cell(I,1)))?=?""

¿Siguiente? Yo

Debido a que las claves de los objetos del diccionario no se pueden repetir, el resultado es Todos los departamentos se retienen en el objeto del diccionario (solo existe un departamento)

Rango("A1:D1" ¿Seleccionar? Filtro "Autofiltro"

p>

PageSetup). PrintArea?" $A$1: $D$? r? strPart?

Range("$A$1:$D$"? amp?r).Filter?Fields:=1,?Criteria1:= strPart 'Filtrar cada departamento. p>Hoja de trabajo activa. ¿Imprimir salida? Collate:=True,?IgnorePrintAreas:=False.)

Entonces

¿Establecer?Dic?=?Nada<. /p>

¿Fin? SubA cambia el área en el código cuando hay otras columnas o más, es decir, la columna "A" mencionada en el código se cambia a la columna C; ¿"$A$1:$D"? ,?A1:D1 también se cambia al área correspondiente

Haga clic derecho en la hoja de trabajo-Ver código-Pegue el código y ejecute.