{"id":16051,"date":"2021-07-11T07:44:16","date_gmt":"2021-07-11T12:44:16","guid":{"rendered":"https:\/\/www.perucontable.com\/excelcontable\/?p=16051"},"modified":"2023-11-15T18:45:47","modified_gmt":"2023-11-15T23:45:47","slug":"macro-para-impedir-la-impresion-en-excel","status":"publish","type":"post","link":"https:\/\/www.perucontable.com\/excelcontable\/macro-para-impedir-la-impresion-en-excel\/","title":{"rendered":"MACRO PARA IMPEDIR LA IMPRESI\u00d3N EN EXCEL"},"content":{"rendered":"<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img decoding=\"async\" loading=\"lazy\" width=\"581\" height=\"309\" src=\"https:\/\/www.perucontable.com\/excelcontable\/wp-content\/uploads\/2021\/07\/image-47.png\" alt=\"\" class=\"wp-image-16052\" srcset=\"https:\/\/www.perucontable.com\/excelcontable\/wp-content\/uploads\/2021\/07\/image-47.png 581w, https:\/\/www.perucontable.com\/excelcontable\/wp-content\/uploads\/2021\/07\/image-47-300x160.png 300w\" sizes=\"(max-width: 581px) 100vw, 581px\" \/><\/figure><\/div>\n\n\n<p>Impedir la impresi\u00f3n en Excel puede ser de tu inter\u00e9s, tal vez por temas de confidencialidad, tal vez para evitar redundancia de informaci\u00f3n o un largo etc. Sea cual sea tu motivo, la forma m\u00e1s sencilla de lograr esto es utilizando una macro que sea capaz de cancelar el trabajo de impresi\u00f3n, antes de que este comience.<\/p>\n\n\n\n<p>En esta ocasi\u00f3n te&nbsp;mostrar\u00e9 c\u00f3mo puedes crear esta macro en Excel en pocos pasos para evitar la impresi\u00f3n de una o varias hojas en Excel.<\/p>\n\n\n\n<h2><strong>ADVERTENCIA SOBRE LA MACRO<\/strong><\/h2>\n\n\n\n<p>Esta t\u00e9cnica supone que el usuario habilitar\u00e1 la ejecuci\u00f3n de macros al abrir el archivo. En caso de que eso no suceda, ser\u00e1 imposible evitar que el usuario imprima las hojas del libro.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img decoding=\"async\" loading=\"lazy\" width=\"671\" height=\"83\" src=\"https:\/\/www.perucontable.com\/excelcontable\/wp-content\/uploads\/2021\/07\/image-49.png\" alt=\"\" class=\"wp-image-16054\" srcset=\"https:\/\/www.perucontable.com\/excelcontable\/wp-content\/uploads\/2021\/07\/image-49.png 671w, https:\/\/www.perucontable.com\/excelcontable\/wp-content\/uploads\/2021\/07\/image-49-300x37.png 300w\" sizes=\"(max-width: 671px) 100vw, 671px\" \/><\/figure><\/div>\n\n\n<h2><strong>EL EVENTO&nbsp;<em>BEFOREPRINT<\/em>&nbsp;EN EXCEL<\/strong><\/h2>\n\n\n\n<p>Cuando hablamos de un evento en programaci\u00f3n nos referimos a un bloque de c\u00f3digo que ser\u00e1 ejecutado en el momento en que se realice determinada acci\u00f3n dentro de Excel.<\/p>\n\n\n\n<p>Para nuestro ejemplo nos interesa el evento llamado&nbsp;<em>BeforePrint<\/em>&nbsp;que ejecutar\u00e1 el c\u00f3digo justo antes de enviar el documento a impresi\u00f3n. Este evento es el que utilizaremos para interceptar la ejecuci\u00f3n del comando&nbsp;<em>Imprimir<\/em>&nbsp;y evitar la impresi\u00f3n del libro.<\/p>\n\n\n\n<p>Para acceder al evento&nbsp;<em>BeforePrint<\/em>&nbsp;debemos abrir el Editor de Visual Basic pulsando la combinaci\u00f3n de teclas ALT + F11. Posteriormente debes hacer doble clic en el objeto&nbsp;<em>ThisWorkbook<\/em>&nbsp;que se muestra en el panel izquierdo y en las listas desplegables del panel derecho deber\u00e1s seleccionar las opciones&nbsp;<em>Workbook<\/em>&nbsp;y&nbsp;<em>BeforePrint<\/em>&nbsp;como se muestra en la siguiente imagen:<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter\"><img decoding=\"async\" src=\"https:\/\/cdn.exceltotal.com\/0605\/impedir-la-impresion-en-excel-02.png\" alt=\"Impedir que se pueda imprimir en Excel\"\/><\/figure><\/div>\n\n\n<p>Una vez hecha la selecci\u00f3n de la opci\u00f3n&nbsp;<em>BeforePrint<\/em>, se insertar\u00e1n las l\u00edneas de c\u00f3digo correspondientes al evento como se muestra en la imagen anterior.<\/p>\n\n\n\n<h2><strong>IMPEDIR LA IMPRESI\u00d3N DE UN LIBRO EN EXCEL<\/strong><\/h2>\n\n\n\n<p>Para crear la macro que impida la impresi\u00f3n del libro de Excel, debemos agregar un par de l\u00edneas de c\u00f3digo al evento&nbsp;<em>BeforePrint<\/em>&nbsp;como se muestra a continuaci\u00f3n.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img decoding=\"async\" loading=\"lazy\" width=\"721\" height=\"182\" src=\"https:\/\/www.perucontable.com\/excelcontable\/wp-content\/uploads\/2021\/07\/image-50.png\" alt=\"\" class=\"wp-image-16055\" srcset=\"https:\/\/www.perucontable.com\/excelcontable\/wp-content\/uploads\/2021\/07\/image-50.png 721w, https:\/\/www.perucontable.com\/excelcontable\/wp-content\/uploads\/2021\/07\/image-50-300x76.png 300w, https:\/\/www.perucontable.com\/excelcontable\/wp-content\/uploads\/2021\/07\/image-50-696x176.png 696w\" sizes=\"(max-width: 721px) 100vw, 721px\" \/><\/figure><\/div>\n\n\n<p>La primera l\u00ednea de c\u00f3digo asigna el valor&nbsp;<em>True<\/em>&nbsp;al argumento&nbsp;<em>Cancel<\/em>&nbsp;y es precisamente esta instrucci\u00f3n la que cancela la impresi\u00f3n. La segunda l\u00ednea de c\u00f3digo es solamente una notificaci\u00f3n para indicar al usuario que no es posible hacer la impresi\u00f3n.<\/p>\n\n\n\n<p>En este punto es conveniente guardar el archivo como un&nbsp;<em>Libro habilitado para macros<\/em>&nbsp;de manera que se hagan permanentes los cambios reci\u00e9n hechos al c\u00f3digo del evento&nbsp;<em>BeforePrint<\/em>.<\/p>\n\n\n\n<p>Para probar la macro ser\u00e1 suficiente con ejecutar el comando&nbsp;<em>Imprimir<\/em>. Ya sea que vayas a la ficha Archivo y pulses&nbsp;<em>Imprimir<\/em>&nbsp;o que tengas el comando&nbsp;<em>Imprimir<\/em>&nbsp;en la barra de herramientas de acceso r\u00e1pido, el resultado ser\u00e1 la misma notificaci\u00f3n de parte de Excel.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter\"><img decoding=\"async\" src=\"https:\/\/cdn.exceltotal.com\/0605\/impedir-la-impresion-en-excel-03.png\" alt=\"Impedir que los usuarios impriman un libro de Excel\"\/><\/figure><\/div>\n\n\n<p>Puedes agregar nuevas hojas al libro, pero no podr\u00e1s imprimirlas ya que la macro reci\u00e9n creada se ejecutar\u00e1 para todas ellas evitando la impresi\u00f3n. Si queremos evitar la impresi\u00f3n solo de alguna de las hojas de nuestro libro, es necesario agregar algunas l\u00edneas de c\u00f3digo a la macro.<\/p>\n\n\n\n<h2><strong>IMPEDIR LA IMPRESI\u00d3N DE UNA HOJA ESPEC\u00cdFICA<\/strong><\/h2>\n\n\n\n<p>Es posible impedir la impresi\u00f3n de determinada hoja de Excel comparando su nombre con el de la hoja activa. Supongamos que en un nuevo libro de Excel tengo tres hojas: Hoja1, Hoja2 y Hoja3. Para impedir la impresi\u00f3n de la Hoja2, debo modificar el c\u00f3digo de la macro de la siguiente manera:<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img decoding=\"async\" loading=\"lazy\" width=\"724\" height=\"217\" src=\"https:\/\/www.perucontable.com\/excelcontable\/wp-content\/uploads\/2021\/07\/image-51.png\" alt=\"\" class=\"wp-image-16056\" srcset=\"https:\/\/www.perucontable.com\/excelcontable\/wp-content\/uploads\/2021\/07\/image-51.png 724w, https:\/\/www.perucontable.com\/excelcontable\/wp-content\/uploads\/2021\/07\/image-51-300x90.png 300w, https:\/\/www.perucontable.com\/excelcontable\/wp-content\/uploads\/2021\/07\/image-51-696x209.png 696w\" sizes=\"(max-width: 724px) 100vw, 724px\" \/><\/figure><\/div>\n\n\n<p>La sentencia IF nos ayudar\u00e1 a comparar el nombre de la hoja activa con el nombre de la hoja que deseamos evitar que sea impresa. Si los nombres coinciden, se cancelar\u00e1 la ejecuci\u00f3n del comando&nbsp;<em>Imprimir<\/em>&nbsp;y se mostrar\u00e1 el mensaje de advertencia al usuario.<\/p>\n\n\n\n<h2><strong>IMPEDIR LA IMPRESI\u00d3N DE VARIAS HOJAS<\/strong><\/h2>\n\n\n\n<p>Si deseas impedir la impresi\u00f3n de varias hojas a la vez, entonces podemos modificar un poco el c\u00f3digo de la macro anterior para utilizar una sentencia&nbsp;<em>Select Case<\/em>&nbsp;y as\u00ed facilitar la comparaci\u00f3n del nombre de la hoja activa con aquellas hojas que no deseamos que sean impresas.<\/p>\n\n\n\n<p>Para este ejemplo usaremos un libro de Excel con 5 hojas y evitar\u00e9 la impresi\u00f3n de la Hoja2, Hoja3 y Hoja4. El c\u00f3digo es el siguiente.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img decoding=\"async\" loading=\"lazy\" width=\"749\" height=\"240\" src=\"https:\/\/www.perucontable.com\/excelcontable\/wp-content\/uploads\/2021\/07\/image-52.png\" alt=\"\" class=\"wp-image-16057\" srcset=\"https:\/\/www.perucontable.com\/excelcontable\/wp-content\/uploads\/2021\/07\/image-52.png 749w, https:\/\/www.perucontable.com\/excelcontable\/wp-content\/uploads\/2021\/07\/image-52-300x96.png 300w, https:\/\/www.perucontable.com\/excelcontable\/wp-content\/uploads\/2021\/07\/image-52-696x223.png 696w\" sizes=\"(max-width: 749px) 100vw, 749px\" \/><\/figure><\/div>\n\n\n<p>Para agregar m\u00e1s hojas a la lista de aquellas que no se podr\u00e1 imprimir, solo deber\u00e1s ingresar su nombre entre comillas dobles y separarlo con una coma del resto de nombres al final de la instrucci\u00f3n&nbsp;<em>Case<\/em>.<\/p>\n\n\n\n<p>Con estos tres ejemplos hemos aprendido a impedir la impresi\u00f3n en Excel. En el primer ejemplo evitamos la impresi\u00f3n de cualquier hoja del libro. El segundo ejemplo utiliza la sentencia IF para evitar la impresi\u00f3n de una hoja espec\u00edfica del libro y nuestro \u00faltimo ejemplo utiliza la sentencia&nbsp;<em>Select Case<\/em>&nbsp;para crear una lista de los nombres de hojas que queremos impedir que sean impresas.<br>Ahora solo queda comenzar a practicar con el evento&nbsp;<em>BeforePrint<\/em>&nbsp;en Excel.<\/p>\n\n\n\n<p><strong>Art\u00edculo que te recomendamos leer:<\/strong><br><strong><a href=\"https:\/\/www.perucontable.com\/excelcontable\/la-funcion-bdcontar-en-excel\/\" data-type=\"URL\" data-id=\"https:\/\/www.perucontable.com\/excelcontable\/la-funcion-bdcontar-en-excel\/\">LA FUNCI\u00d3N BDCONTAR EN EXCEL<\/a><\/strong><\/p>\n\n\n\n<p><strong>\u00bfQu\u00e9 te pareci\u00f3 nuestra blog? Com\u00e9ntanos.<\/strong><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Impedir la impresi\u00f3n en Excel puede ser de tu inter\u00e9s, tal vez por temas de confidencialidad, tal vez para evitar redundancia de informaci\u00f3n o un largo etc. Sea cual sea tu motivo, la forma m\u00e1s sencilla de lograr esto es utilizando una macro que sea capaz de cancelar el trabajo de impresi\u00f3n, antes de que [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":16063,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[108,67,25],"tags":[],"yst_prominent_words":[],"_links":{"self":[{"href":"https:\/\/www.perucontable.com\/excelcontable\/wp-json\/wp\/v2\/posts\/16051"}],"collection":[{"href":"https:\/\/www.perucontable.com\/excelcontable\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.perucontable.com\/excelcontable\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.perucontable.com\/excelcontable\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.perucontable.com\/excelcontable\/wp-json\/wp\/v2\/comments?post=16051"}],"version-history":[{"count":3,"href":"https:\/\/www.perucontable.com\/excelcontable\/wp-json\/wp\/v2\/posts\/16051\/revisions"}],"predecessor-version":[{"id":16848,"href":"https:\/\/www.perucontable.com\/excelcontable\/wp-json\/wp\/v2\/posts\/16051\/revisions\/16848"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.perucontable.com\/excelcontable\/wp-json\/wp\/v2\/media\/16063"}],"wp:attachment":[{"href":"https:\/\/www.perucontable.com\/excelcontable\/wp-json\/wp\/v2\/media?parent=16051"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.perucontable.com\/excelcontable\/wp-json\/wp\/v2\/categories?post=16051"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.perucontable.com\/excelcontable\/wp-json\/wp\/v2\/tags?post=16051"},{"taxonomy":"yst_prominent_words","embeddable":true,"href":"https:\/\/www.perucontable.com\/excelcontable\/wp-json\/wp\/v2\/yst_prominent_words?post=16051"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}