Este fórum está sendo desativado

Depois de 9 anos, este fórum será desativado. Mas calma.... estamos migrando para uma comunidade no DISCORD. Junte-se a nós.

ENTRAR PARA DISCORD

Tópicos relacionados a códigos VBA, gravação de macros, etc.
#71070
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
Editado pela última vez por Neuza em 08 Jul 2022 às 16:33, em um total de 1 vez.
#71073
Olá, @Neuza .

Veja se ajuda.
Coloque na matriz os nomes das planilhas que não deseja imprimir.
Código: Selecionar todos
Private 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
#71082
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 todos
Private 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
#71087
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!
Você não está autorizado a ver ou baixar esse anexo.
#71089
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
long long title how many chars? lets see 123 ok more? yes 60

We have created lots of YouTube videos just so you can achieve [...]

Another post test yes yes yes or no, maybe ni? :-/

The best flat phpBB theme around. Period. Fine craftmanship and [...]

Do you need a super MOD? Well here it is. chew on this

All you need is right here. Content tag, SEO, listing, Pizza and spaghetti [...]

Lasagna on me this time ok? I got plenty of cash

this should be fantastic. but what about links,images, bbcodes etc etc? [...]

Estamos migrando para uma comunidade no Discord