Como hacer código VBA en Excel para imprimir solo valores de celda y personalizar tamaño de página

Deseo hacer un código VBA en Excel, específicamente botón Imprimir.

Características de impresión personalizada.

Adecuar los valores de celda en possición de papel ya impreso (factura por ejemplo) a imprimir en su correspondiente lugar.

Papel de tamaño personalizado, ejemplo mitad papel tamaño carta.
Usar tamaño y tipo de fuentes a usar en al impresión.
NOTA: No deseo crear "GRABAR MACRO" como la mayoría responden.
El códiogo debe ser personalizado como una plantilla para modificaciones posteriores.
Pueda ser utilizar una palntilla Word o Publisher par asolo traer los datos de la Págiana(Hoja) que actualmente se use, recoger los datos y solo imprimir.
Caulquie mejor idea, bienvenida sea.

1 respuesta

Respuesta
1

[Hola

Lo primero es recordar que el tamaño del papel no depende del programa sino de la impresora instalada (y sus "Drivers"). Lo segundo es recordar que, además, así tengas una impresora que admite configurar papel de tamaño personalizado, el VBA de Excel no tiene una propiedad que lo haga. Puedes usar la propiedad "PaperSize" pero a sabiendas que estos son los tamaños que admite:

https://msdn.microsoft.com/en-us/vba/excel-vba/articles/pagesetup-papersize-property-excel?f=255&MSPPError=-2147217396 

Otra opción es usar la configuración de tamaño "A4" pero ir modificando el tamaño de los márgenes hasta obtener la impresión del "tamaño" que deseas, claro que eso es básicamente usar "ensayo y error" hasta que obtengas el efecto deseado. Y no, no hay otra solución con Excel.

Abraham Valencia

¡Gracias! Abraham Valencia

Tu aporte creo me da la solución que busco. Tmabién tiene razón en decir el ensayar  aprueba y error. Eso lo sé muy bien, porque hay que ir ajustanto hasta conseguir el objetivo.

Es uan l'satima que ne Excel y progrmación en VBA no se pueda manejar este tipo de situación sobre enviar a imprimir, digamos de forma directa sólo los datos, aunque recuerdo antes lo tenía (o no sé si me equivoco..)

Otra opción es usar la configuración de tamaño "A4" pero ir modificando el tamaño de los márgenes hasta obtener la impresión del "tamaño" que deseas

Tambien tenía pensado ne eso... pq tengo esa clarida com manejar impresiones, auque aqui en excel se ve limitado esto. Un HORRORASOOO!!! de Microsoft.. como es posible que se limitan en este tipo de manejo de datos a la hora de impresiones.... No hay libre albeldrío para impresiones mejoradas y de múltiples opciones... ',(

Aunque déjeme decirle que casi lo logré usando MS Publisher en combinación de correspondencia, en excel asile los datos a otra hoja para extrraer los datos. Funcionó a la primera, pero después se bloqueaba el Publisher... en fín.. ya tenia la plantilla com para poder hacerlo, pero es en el proceso de extracción de los datos que se queda estático... pq descubrí que por cada Objeto Excel en Publisher, este lo pasa a modo gráfico...

Gracias de nuevo por su aporte.

VBA, desde su aparición, es una suerte de Visual Basic 6.0 con limitaciones y precisamente una es esa de no poder hacer "de todo" con las impresiones y/o impresoras. Dicha limitación del VBA es un poco mayor a la del Word, por ejemplo, y aunque con Access algo se puede hacer al respecto, la verdad es que es tanto lo que se tiene que programar que el costo es bastante mayor que el beneficio.

Finalmente creo que eso de usar lo datos en Publisher es una buena opción.

Saludos]

Abraham Valencia

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas