Página 1 de 1
(RESOLVIDO) Bloquear impressão via menu "Imprimir" através de macro
Enviado: 30 Mai 2022 às 15:29
por Neuza
Boa Tarde!
Solicito ajuda para bloquear/desabilitar a impressão de determinadas planilhas (não de todas) através do menu: Arquivo-Imprimir (Ctrl+P) ou pelo ícone da impressora, esse evento seria através de uma macro. Pois, temos uma macro que ao apertar um botão ela assume esse comportamento na planilha e mandará imprimir automaticamente.
Att
Re: Bloquear impressão via menu "Imprimir" através de macro
Enviado: 30 Mai 2022 às 19:46
por osvaldomp
Olá,
@Neuza .
Veja se ajuda.
Coloque na matriz os nomes das planilhas que
não deseja imprimir.
Código: Selecionar todosPrivate Sub Workbook_BeforePrint(Cancel As Boolean)
Cancel = True
If IsNumeric(Application.Match(ActiveSheet.Name, Array("Bozo", "Putin", "Milícia", "Trump"), 0)) Then
MsgBox "IMPRESSÃO NÃO PERMITIDA"
End If
End Sub
Re: Bloquear impressão via menu "Imprimir" através de macro
Enviado: 31 Mai 2022 às 08:15
por Neuza
Bom Dia! osvaldomp!
Copiei seu código para o módulo01, Porém Não Funcionou
Favor Verificar Se Esqueci de Algum Detalhe
Anexo Planilha Já com seu código
Desde já Agradeço!
Re: Bloquear impressão via menu "Imprimir" através de macro
Enviado: 31 Mai 2022 às 09:31
por osvaldomp
Olá,
@Neuza .
O código que passei deve ser instalado no módulo de
EstaPastadeTrabalho.
Eu não passei essa informação antes porque no seu primeiro post você comentou que já "temos uma macro", então imaginei que você saberia em qual módulo deveria instalar ...sorry.
Utilize o código abaixo que foi corrigido, pois no anterior coloquei o comando
Cancel em posição errada. Peço desculpas pelas falhas.
Código: Selecionar todosPrivate Sub Workbook_BeforePrint(Cancel As Boolean)
If IsNumeric(Application.Match(ActiveSheet.Name, Array("INSERIR RESULTADOS", "BANCO DE IMAGEM"), 0)) Then
MsgBox "IMPRESSÃO NÃO PERMITIDA"
Cancel = True
End If
End Sub
Re: Bloquear impressão via menu "Imprimir" através de macro
Enviado: 31 Mai 2022 às 16:12
por Neuza
Boa Tarde! Osvaldomp
Funcionou perfeitamente para o 1º arquivo, inclusive sendo compatível com um procedimento de impressão (macro) existente, no qual mencionei na 1ª mensagem, porém anexei uma versão antiga que não continha o botão de impressão.
Então...
Ao tentar replicar sua solução para uma outra planilha (em anexo) está dando conflito com o procedimento (macro) existente no botão “imprimir”
Excuse me! Se não for pedir muito, daria para Você avaliar o motivo do conflito?
Desde já Agradecida!
Re: Bloquear impressão via menu "Imprimir" através de macro
Enviado: 31 Mai 2022 às 17:15
por osvaldomp
Olá, Neuza.
Nesse caso é preciso colocar no código antes existente um comando para inibir eventos, assim o segundo código (o que passei) não será disparado.
Acrescente as duas linhas m vermelho, conforme abaixo.
Cadastro.Visible = xlSheetVisible
Application.EnableEvents = False
Cadastro.Range("A1:L" & Ultima_Linha).PrintPreview
Application.EnableEvents = True
End Sub
Re: Bloquear impressão via menu "Imprimir" através de macro
Enviado: 01 Jun 2022 às 14:55
por Neuza
Boa Tarde osvaldomp
Rapazzzz....Quanta Precisão!
Perfect
Obrigada!