Boa Tarde a todos
Tenho uma pasta com varias abas , como faço para quando clicar no botão imprimir , estando ativo uma determinada aba (por exemplo: Plan2) ser executado uma macro e logo após imprimir a Plan2.
Estando ativa outra aba que não a Plan2 execute a impressão da Plan ativa ,mas sem executar a macro
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel
Bom dia!!
use a pesquisa do fórum.
Veja um exemplo, faça uma adaptação!
Sub Imrimir() Dim sh As Worksheet Set sh = ActiveSheet Worksheets(Array("Plan1", "Plan2", "Plan4")).PrintOut sh.Select End Sub
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel
Bom dia!!
use a pesquisa do fórum.
Veja um exemplo, faça uma adaptação!
Alexandre fiz a pesquisa mas não achei, não tenho pratica com os códigos o que faço é adaptação mesmo.
Pelo que entendi esse cód q vc me passou é para funcionar associado a um botão/figura ,não é?
O que preciso é que se der CTRL P , ou ir na barra e BotãoImprimir ele faça o que quero.
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel
O CTRL+P que preciso não tá aqui , nasci no dia de São Cadeado.
Sub DesligaTeclas() ' File Application.OnKey "^N", "" 'Ctrl+N novo arquivo Application.OnKey "^O", "" 'Ctrl+O abrir arquivo Application.OnKey "^S", "" 'Ctrl+S salvar Application.OnKey "{F12}", "" 'F12 salvar como Application.OnKey "%{F4}", "" 'Alt+F4 sair do Excel ' Edit Application.OnKey "^H", "" 'Ctrl+H replace Application.OnKey "{F5}", "" 'F5 Goto ' Insert Application.OnKey "^+{+}", "" 'Ctrl+Shift+ + inserir dialog box Application.OnKey "+{F11}", "" 'Shift+F11 novo worksheet Application.OnKey "{F11}", "" 'F11 novo gráfico Application.OnKey "^{F11}", "" 'Ctrl+F11 macro do Excel 4.0 Application.OnKey "+{F3}", "" 'Ctrl+F3 definir nome Application.OnKey "{F3}", "" 'F3 colar nomes Application.OnKey "^+{F3}", "" 'Ctrl+Shift+F3 criar nomes ' Format Application.OnKey "^1", "" 'Ctrl+1 formatar células Application.OnKey "^9", "" 'Ctrl+9 esconder linhas Application.OnKey "^+{(}", "" 'Ctrl+Shift+( mostrar linhas Application.OnKey "^0", "" 'Ctrl+0 esconder colunas Application.OnKey "^+{)}", "" 'Ctrl+Shift+) mostrar colunas ' Data Application.OnKey "%+{RIGHT}", "" 'Alt+Shift+RightArrow agrupa linhas/colunas Application.OnKey "%+{LEFT}", "" 'Alt+Shift+LeftArrow desagrupa linhas/colunas ' Window Application.OnKey "{F6}", "" 'F6 próximo painel Application.OnKey "+{F6}", "" 'Shift+F6 painel anterior Application.OnKey "^{F6}", "" 'Ctrl+F6 próxima janela Application.OnKey "^+{F6}", "" 'Ctrl+Shift+F6 janela anterior ' Outros Application.OnKey "^{PGUP}", "" 'Ctrl+PgUp sheet anterior Application.OnKey "^{PGDN}", "" 'Ctrl+PgDn sheet posterior Application.OnKey "+{F12}", "" 'Shift+F12 salvar Application.OnKey "^{F12}", "" 'Ctrl+F12 abrir Application.OnKey "^{TAB}", "" 'Ctrl+Tab próxima janela Application.OnKey "^+{TAB}", "" 'Ctrl+Shift+Tab janela anterior Application.OnKey "^{-}", "" 'Ctrl+- exclui seleção Application.OnKey "^{;}", "" 'Ctrl+; insere data Application.OnKey "^{:}", "" 'Ctrl+: insere hora End Sub Sub LigaTeclas() ' File Application.OnKey "^N" 'Ctrl+N novo arquivo Application.OnKey "^O" 'Ctrl+O abrir arquivo Application.OnKey "^S" 'Ctrl+S salvar Application.OnKey "{F12}" 'F12 salvar como Application.OnKey "%{F4}" 'Alt+F4 sair do Excel ' Edit Application.OnKey "^H" 'Ctrl+H replace Application.OnKey "{F5}" 'F5 Goto ' Insert Application.OnKey "^+{+}" 'Ctrl+Shift+ + inserir dialog box Application.OnKey "+{F11}" 'Shift+F11 novo worksheet Application.OnKey "{F11}" 'F11 novo gráfico Application.OnKey "^{F11}" 'Ctrl+F11 macro do Excel 4.0 Application.OnKey "+{F3}" 'Ctrl+F3 definir nome Application.OnKey "{F3}" 'F3 colar nomes Application.OnKey "^+{F3}" 'Ctrl+Shift+F3 criar nomes ' Format Application.OnKey "^1" 'Ctrl+1 formatar células Application.OnKey "^9" 'Ctrl+9 esconder linhas Application.OnKey "^+{(}" 'Ctrl+Shift+( mostrar linhas Application.OnKey "^0" 'Ctrl+0 esconder colunas Application.OnKey "^+{)}" 'Ctrl+Shift+) mostrar colunas ' Data Application.OnKey "%+{RIGHT}" 'Alt+Shift+RightArrow agrupa linhas/colunas Application.OnKey "%+{LEFT}" 'Alt+Shift+LeftArrow desagrupa linhas/colunas ' Window Application.OnKey "{F6}" 'F6 próximo painel Application.OnKey "+{F6}" 'Shift+F6 painel anterior Application.OnKey "^{F6}" 'Ctrl+F6 próxima janela Application.OnKey "^+{F6}" 'Ctrl+Shift+F6 janela anterior ' Outros Application.OnKey "^{PGUP}" 'Ctrl+PgUp sheet anterior Application.OnKey "^{PGDN}" 'Ctrl+PgDn sheet posterior Application.OnKey "+{F12}" 'Shift+F12 salvar Application.OnKey "^{F12}" 'Ctrl+F12 abrir Application.OnKey "^{TAB}" 'Ctrl+Tab próxima janela Application.OnKey "^+{TAB}" 'Ctrl+Shift+Tab janela anterior Application.OnKey "^{-}" 'Ctrl+- exclui seleção Application.OnKey "^{;}" 'Ctrl+; insere data Application.OnKey "^{:}" 'Ctrl+: insere hora End Sub
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel
Achei um pouco confusa a explicação, acredito que o evento "Workbook_BeforePrint" seja o que está querendo, o mesmo é acionado quando mandamos Imprimir.
viewtopic.php?f=10&t=2482&hilit=BeforePrint
[]s
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel
Ok Mauro é com Workbook_BeforePrint mesmo, deu certo após umas Gambiarras aqui;
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel
Desculpem mas o Zé Ruela aqui havia colocado RESOLVIDO e na verdade não está.
Este foi o código usado:
Porém precisava que quando desse CTRL+P ou clicasse em Arquivo imprimir ele rodasse o código para depois abrir a página de impressão permitindo assim VISUALIZAR a impressão ; e da forma que está clico em Arquivo imprimir ou CTRL+P então é aberta a cx de impressão sem rodar o código , o código só roda quando clico no botão imprimir com o desenho da impressora (excel 2010) ,
Private Sub Workbook_beforePrint(Cancel As Boolean) On Error Resume Next Dim Rng As Range If ActiveSheet.Range("A1") > 1 Then Set Rng = Range("A55:A96") Rng.EntireRow.Hidden = False ActiveWindow.FreezePanes = False Columns("O:IV").Select Range(Selection, Selection.End(xlToRight)).Select Selection.EntireColumn.Hidden = True Else Exit Sub End If End Sub
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel
Boa tarde!!
Vou dar um chute, caso não seja desconsidere minha postagem.
Private Sub Workbook_beforePrint(Cancel As Boolean) Dim Ws As Worksheet Dim PrntRng As Range, HiddenRng As Range For Each Ws In Worksheets If Ws.Range("A1").Value > 1 Then Set PrntRng = Ws.Range("A55:A96") PrntRng.EntireRow.Hidden = False Set HiddenRng = Ws.Columns("O:IV") Set HiddenRng = Ws.Range(HiddenRng, HiddenRng.End(xlToRight)) HiddenRng.EntireColumn.Hidden = True Ws.PageSetup.PrintArea = PrntRng.Address Next Ws End Sub
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel
ainda não deu
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel
Deixa-me tentar de novo.
Tenho uma parte da minha planilha ( da linha 1 a linha 96) que fica oculta ; tenho um código que reexibi da linha 31 a 96 ( da linha 1 a 31 sempre fica oculta).nome do código ocultar_reexibir_anexo
Preciso do seguinte:
Quando clicar “arquivo imprimir” ou a lupa de visualização ou CTRL P , que execute o código ocultar_reexibir_anexo ; isto seria o ideal ; mas se não houver como fazer isto como faço para desabilitar somente nesta pasta de trabalho a função “arquivo imprimir” a lupinha de visualização e CTRL P , criar na plan um botão “imprimir” que rode o código e permita a visualização da impressão com posterior impressão.
Tem como?
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel
Tentei esse código .
mas nesse código dou “arquivo imprimir” ou a lupinha de visualização ou CTRL P , ai abre a tela de impressão e só após clicar no botão imprimir roda a função ,
e o que preciso é:
dou “arquivo imprimir” ou a lupinha de visualização ou CTRL P , rode a função ,depois abra a tela de impressão
Private Sub Workbook_BeforePrint(Cancel As Boolean) ocultar_reexibir_anexo 'NomeDaFuncao End Sub
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel
ou uma outra solução seria desativar o CTRL P, visualizar impressão e "arquivo imprimir" ; ai criar um botão para rodar a função e logo em seguida imprimir , alguém sabe como
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel
Acho que há uma forma mais simples de resolver isso, não? Cole na classe da Pasta de Trabalho do seu projeto:
Private Sub Workbook_BeforePrint(Cancel As Boolean) With Sheets("Plan2") If ActiveSheet.Name = .Name Then 'Código aqui. End If End With End Sub
O contra desse exemplo é que se houver mais de uma Planilha selecionada no ato de ordenar uma impressão, pode ser que a macro que manipula Plan2 não seja executada.
Felipe Costa Gualberto
Microsoft Excel MVP
http://www.ambienteoffice.com.br
Muito Obrigado BenzaDeus;
Mas não deu certo não; continua rodando a funçao somente após o clique no segundo botão IMPRIMIR
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel
Posso estar errado mas;
Private Sub Workbook_beforePrint(Cancel As Boolean) é associado ao botão com o desenho da impressora , que é aquele que após clicar o arquivo vai pra impressora ( é que quando clico em “arquivo imprimir” ou a lupa de visualização ou CTRL P o código não roda , só roda depois que clico no botão imprimir que tem o desenho da impressora.)
“arquivo imprimir” ou a lupa de visualização ou CTRL P - Não seria visualização de impressão com um evento diferente do BeforePrint?
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel