✔ VBA Excel Specialist® - Quaisquer soluções e/ou desenvolvimento de aplicações pessoais, ou da empresa, que não constem neste Blog podem ser tratados como consultoria freelance. Contate-nos: brazilsalesforceeffectiveness@gmail.com | ESTE BLOG NÃO SE RESPONSABILIZA POR QUAISQUER DANOS PROVENIENTES DO USO DOS CÓDIGOS AQUI POSTADOS EM APLICAÇÕES PESSOAIS OU DE TERCEIROS.
Views
...
Important:
Quaisquer soluções e/ou desenvolvimento de aplicações pessoais, ou da empresa, que não constem neste Blog podem ser tratados como consultoria freelance.
E-mails
Deixe seu e-mail para receber atualizações...
eBook Promo
Mostrando postagens com marcador print. Mostrar todas as postagens
Mostrando postagens com marcador print. Mostrar todas as postagens
VBA Excel - Outros modos para imprimir planilhas selecionadas ou não.
Olá pessoal!
Resolvamos mais esta questão quanto a impressão de planilhas, geralmente contendo Dashboards & Scorecards, ou Cockpits, que precisem ser impressas.
Este código imprime as planilhas selecionadas, veja o código do procedimento PrintSelectedsSheets mostrado abaixo.
Sub PrintSelectedSheets(Preview As Boolean)Dim N As LongDim M As LongDim Arr() As StringWith ActiveWindow.SelectedSheetsReDim Arr(1 To .Count)For N = 1 To .CountLet Arr(N) = .Item(N).NameNext NEnd WithSheets(Arr).PrintOut Preview:=TrueEnd Sub
Como faço para imprimir apenas as pastas não selecionadas?
Sub PrintUnselectedSheets (Preview As Boolean)Dim WS As ObjectDim N As LongDim Arr() As StringDim K As LongDim B As BooleanReDim Arr(1 To ActiveWorkbook.Sheets.Count)For Each WS In ActiveWorkbook.SheetsLet B = TrueWith ActiveWindow.SelectedSheetsFor N = 1 To .CountLet B = TrueIf StrComp(WS.Name, .Item(N).Name, vbTextCompare) = 0 ThenLet B = FalseExit ForEnd IfNext NIf B = True ThenLet K = K + 1Let Arr(K) = WS.NameEnd IfEnd WithNext WSIf K > 0 ThenReDim Preserve Arr(1 To K)ActiveWorkbook.Sheets(Arr).PrintOut Preview:=PreviewEnd IfEnd Sub
Como posso fazer para imprimir todas as Sheets, excluindo as que passar como parâmetro?
PrintSheetsExclude false, "Sheet2", "Sheet4", "Sheet6"This prints all sheets except Sheet2, Sheet4, and Sheet6. The code is shown below:
Sub PrintSheetsExclude (Preview As Boolean, ParamArray Excludes() As Variant)Dim Arr() As StringDim B As BooleanDim N As LongDim M As LongDim K As LongReDim Arr(1 To Sheets.Count)For N = 1 To Sheets.CountLet B = TrueFor M = LBound(Excludes) To UBound(Excludes)If StrComp(Sheets(N).Name, Excludes(M), vbTextCompare) = 0 ThenLet B = FalseExit ForEnd IfNext MIf B = True ThenLet K = K + 1Let Arr(K) = Sheets(N).NameEnd IfNext NIf K > 0 ThenReDim Preserve Arr(1 To K)Sheets(Arr).PrintOut Preview:=PreviewEnd IfEnd Sub
Fonte: C Person
Tags: André Luiz Bernardes, Microsoft, MOS, MS, Office, Office 2007, Office 2010, automation, automação, print, various print, simultaneously print, multi print, selected
André Luiz Bernardes
A&A® - Work smart, not hard.VBA Excel - Imprimindo múltiplas planilhas simultaneamente.
Olá pessoal!
Resolvamos uma questão constante no que diz respeito a impressão de diversas planilhas, geralmente contendo Dashboards, que precisam ser impressos juntos para nos permitir tanto rapidez como praticidade.
Quando imprimimos uma sheet no MS Excel, esta é impressa num trabalho de impressão próprio, mas a impressão de várias sheets criam vários trabalhos de impressão.
Neste artigo verá descrito um código que pode ser usado para imprimir várias planilhas como um único trabalho de impressão. O primeiro parâmetro para todas as funções é chamado de visualização e indica se as folhas devem ser exibidas na janela de pré-visualização (Preview = True) ou enviadas diretamente para a impressora ativa (Preview = False).
Esta Procedure tem como parâmetros os nomes das planilhas a serem impressas:
PrintSheets False, "Sheet1", "Sheet3", "Sheet5"
Este código imprime as planilhas: Sheet1, Sheet3, e Sheet5, vejoa o código do procedimento PrintSheets mostrado abaixo.
Sub PrintSheets (Preview As Boolean, ParamArray SheetNames() As Variant' PrintSheets' Todas as sheets que serão impressas são passadas como parametro.' As sheets que não existirem serão ignoradas.Dim Arr() As StringDim N As LongDim K As LongDim B As VariantDim WS As ObjectIf UBound(SheetNames) >= LBound(SheetNames) ThenReDim Arr(LBound(SheetNames) To UBound(SheetNames))Let K = LBound(SheetNames)For N = LBound(SheetNames) To UBound(SheetNames)On Error Resume NextErr.ClearSet WS = Sheets(SheetNames(N))If Err.Number = 0 ThenLet Arr(K) = SheetNames(N)Let K = K + 1End IfOn Error GoTo 0Next NIf K > 0 ThenReDim Preserve Arr(LBound(Arr) To K - 1)Sheets(Arr).PrintOut Preview:=PreviewEnd IfEnd IfEnd Sub
Fonte: C Person
Tags: André Luiz Bernardes, Microsoft, MOS, MS, Office, Office 2007, Office 2010, automation, automação, print, various print, simultaneously print, multi print,
André Luiz Bernardes
A&A® - Work smart, not hard.
Assinar:
Postagens (Atom)