Página 1 de 1

Macro que imprime somente até onde tem preenchimento

Enviado: 25 Set 2020 às 20:30
por albinosergio
Boa noite senhores,
Tenho uma planilha que a a área de impressão varia de acordo com os dados fornecidos, assim preciso, por favor, se possível de uma macro que faça esse trabalho de acordo com o preencimento, lembrando que as linhas da planilha para impressão estará com funções, assim aparentemente vazias.
Segue abaixo um arquivo para tentar melhor esclarecimento, caso não seja "entendível" farei outra mais detalhada.
Desde de já meus agradecimentos.

Re: Macro que imprime somente até onde tem preenchimento

Enviado: 26 Set 2020 às 09:36
por mucascosta
Código: Selecionar todos
Sub PrintSel()
  Dim c As String, x As Integer
  Sheets("Planilha1").Select
  c = Sheets("Planilha1").Cells(Rows.Count, "B").End(xlUp).Row 'Considerando células em B vazias
  Range("A1:B" & c).Select
  x = MsgBox("VOCÊ QUER IMPRIMIR?", vbYesNo + vbQuestion, Title:="© Muca Sistemas - 2020")
  If x = vbYes Then
  Selection.PrintOut Copies:=1, Collate:=True
  Else
  Exit Sub
  End If
End Sub

Re: Macro que imprime somente até onde tem preenchimento

Enviado: 26 Set 2020 às 15:41
por albinosergio
Show Mucascosta!!!
Estamos quase lá, só falta um detalhe, preciso que a Macro não inclua para área de impressão a partir da linha para baixo em que a célula estiver vazia com a função (="")
Elaborei um modelo aleatório para tentar expressar melhor o que eu preciso, falta só um pequeno detalhe.
Valeu pela sua ajuda, obrigado !!

Re: Macro que imprime somente até onde tem preenchimento

Enviado: 26 Set 2020 às 17:25
por mucascosta
Tente assim:
Código: Selecionar todos
Sub PrintSel()
  Dim x As Integer, MyVar As Long
  Sheets("Planilha1").Select
  MyVar = Application.WorksheetFunction.Count(Sheets("planilha1").Range("B:B")) 'contar só as células preenchidas.
  Range("A2:B" & MyVar + 1).Select
  x = MsgBox("VOCÊ QUER IMPRIMIR?", vbYesNo + vbQuestion, Title:="© Muca Sistemas - 2020")
  If x = vbYes Then
  Selection.PrintOut Copies:=1, Collate:=True
  Else
  Exit Sub
  End If
End Sub

Re: Macro que imprime somente até onde tem preenchimento

Enviado: 27 Set 2020 às 14:49
por albinosergio
EXATAMENTE isso amigo!!!
Muito obrigado, atendeu o que eu precisava.
Obrigado mais uma vez e um abraço gradne.