Macro para imprimir rangos

01/09/2009 - 19:13 por Jorge | Informe spam
¿Como puedo hacer una macro para imprimir, pero que me discrimine celdas
ocupadas o vacias y asi determinar el rango a imprimir. Por ejemplo, si
C52="" (o si C10<>""), imprimir el rango A1:G41; si ademas esta ocupada la
celda c52, entonces el rango a imprimir será A1:G83, etc. En resumen, que
imprima solo las hojas en que existan datos en la columna C y dentro de los
rangos especificados. Ademas, esta macro, me gustaria que fuera "dentro y
antes" que otra
de forma que junto con ordenar la impresión, se ejecute esta segunda macro,
la que se asignaria a un botón de control, que podria denominarse "Imprimir y
Guardar". Gracias.-

Preguntas similare

Leer las respuestas

#1 Jorge
14/09/2009 - 16:19 | Informe spam
Hola Hector Miguel: Redefini el nombre Area_de_Impresión copiando
=desref($a$1:$g$1;;;$a$10;); modifique las tres comas (,) por puntos y comas
(;) y la última coma idem. Cambió el nombre a esnúmero (lo que imagino no
tiene ninguna importancia, ya que le puedo dar otro), pero el problema es que
me arroja una referencia circular. ¿Como lo soluciono? Gracias. Saludos
Jorge.-


"Héctor Miguel" escribió:

Mostrar la cita
#2 Héctor Miguel
15/09/2009 - 01:40 | Informe spam
hola, Jorge !

Mostrar la cita
- como esta eso de "cambio el nombre a es numero"... (???)
a) te refieres a que "agregaste" el nombre (nuevo) "esnumero" a los nombre existentes en el libro ?
b) o realmente REdefiniste el nombre "area_de_impresion" (???)

la referencia circuar es cuando aplicas formulas/funciones/... con referencias circulares EN las celdas de la hojo
(no cuando se trata de nombres, al menos, no que me haya tocado "sufrir")

saludos,
hector.

__ OP __
Mostrar la cita
#3 Jorge
15/09/2009 - 17:28 | Informe spam
Hola hector Miguel: Lo que hice fue lo siguiente: en A1
DESREF(C$10;(FILA()-1)*42;), la que copie exactamente igual hasta A9; en A10
puse =(COINCIDIR(0;A1:A9;0)-1*42) (Excel corrigio el parentesis de cierre);
luego cree un bloque o rango cualquiera (a1:g42), luego fui a Diseño de
Pagina, Area de Impresión, Establecer Area de Impresión y en el cuadro de
Nombre aparece Area_de_Impresión y a la derecha de dicho cuadro, barra de
formulas (fx) copie ÞSREF($A$1:$G$1;$A$10;). Nota que el programa no me
dejo poner tres puntos y comas despues del rango $A$1:$g$1. Si hago click en
A1 en el cuadro de nombres aparece A1 y en el cuadro de formulas, aparece
ÞSREF($A$1:$G$1;$A$10;) y si hago doble click sobre el mismo, me cambia en
el cuadro de nombre a ESNUMERO, aunque me mantiene la formula. ¿Cual paso me
salte o hice mal. Te cuento que a1:a9 muestra 0 y A10 -41.- Saludos


"Héctor Miguel" escribió:

Mostrar la cita
#4 Héctor Miguel
16/09/2009 - 00:51 | Informe spam
hola, Jorge !

Mostrar la cita
=> esta formula no esta bien, compara con la formula de la propuesta original:
=> la que corrigio: =(COINCIDIR(0;A1:A9;0)-1*42)
=> la que funciona: =(COINCIDIR(0;A1:A9;0)-1)*42

nota: excel "corrigio" el parentesis de cierre (probablemente) por que NO lo pusiste tu (?) y no podia adivinar con exactitud (?)

Mostrar la cita
=> este procedimiento tampoco es el sugerido (re-definir el nombre) en la propuesta original...
=> donde debes "entrar" la formula, NO es en la "barra de formulas" si no...
=> en el cuadro de referencias desde (menu:) insertar / nombre / definir...
-> seleccionas el nombre (area_de_impresion)
-> la formula es en: "se refiere a:"

si cualquier duda... comentas ?
saludos,
hector.

Mostrar la cita
Ads by Google
Search Busqueda sugerida