Página 1 de 1

Impressão de formulário a partir de banco de dados

Enviado: 11 Mar 2021 às 16:29
por fernandogaseo
Prezados, muito prazer

Estou com um problema aqui, espero que possam me ajudar.

Tenho um pequeno banco de dados de funcionários, que vai girar em torno de 50 a 100 registros (pode aumentar mais que isso, mas é pouco provável). O arquivo neste momento é composto de 2 planilhas, sendo:
PLANILHA1 = Banco de Dados
PLANILHA2 = Formulário padrão

Eu gostaria de poder escolher no banco de dados (Coluna A), quais registros deverão ser impressos, mantendo o layout padrão do formulário. Hoje se desejo imprimir apenas 1 registro, basta eu inserir o código do funcionário lá no formulário, ele puxa os dados via PROCV e pronto, mando imprimir. Mas e para fazer isso com 10, 15, ou até mesmo todos de uma única vez?

Vou anexar um arquivo para visualizarem melhor o que falei acima.

Grato

Re: Impressão de formulário a partir de banco de dados

Enviado: 11 Mar 2021 às 20:07
por osvaldomp
#
Experimente:
Código: Selecionar todos
Sub ImprimePlan2()
 Dim c As Range
  For Each c In Range("A4:A" & Cells(Rows.Count, 1).End(3).Row).SpecialCells(xlCellTypeConstants)
   If c.Value = "X" Then Sheets("Planilha2").[H9] = c.Offset(, 1).Value: Sheets("Planilha2").PrintOut
  Next c
End Sub

Re: Impressão de formulário a partir de banco de dados

Enviado: 11 Mar 2021 às 22:39
por fernandogaseo
Grande Osvaldo, cara, muito obrigado pela solução, funcionou perfeitamente.

Imaginei que seria um código mais extenso, estava redondamente enganado, rsrs. Você não tem noção de como isso me ajudou aqui no trabalho, espero que vc receba em dobro... valew mesmo.

:D

Re: Impressão de formulário a partir de banco de dados

Enviado: 11 Mar 2021 às 22:48
por osvaldomp
Olá, Fernando.
Que bom que resolveu.

Valeu pelo retorno e pelas palavras. :)

Re: Impressão de formulário a partir de banco de dados

Enviado: 12 Mar 2021 às 15:57
por fernandogaseo
Oi Osvaldo, boa tarde

Sem querer abusar, mas já abusando, rsrs... caso o usuário não selecione nenhum registro, como fazer para exibir a msg: "Você deve selecionar no mínimo 1 registro para prosseguir".

Se puder me ajudar com isso, vai completar a rotina.

Obrigado

Re: Impressão de formulário a partir de banco de dados

Enviado: 12 Mar 2021 às 16:10
por osvaldomp
#
Olá, Fernando.
No código abaixo acrescentei as linhas 3 a 5.
Código: Selecionar todos
Sub ImprimePlan2()
 Dim c As Range
  If Application.CountIf([A:A], "X") = 0 Then
   MsgBox "Você deve selecionar no mínimo 1 registro para prosseguir": Exit Sub
  End If
  For Each c In Range("A4:A" & Cells(Rows.Count, 1).End(3).Row).SpecialCells(xlCellTypeConstants)
   If c.Value = "X" Then Sheets("Planilha2").[H9] = c.Offset(, 1).Value: Sheets("Planilha2").PrintOut
  Next c
End Sub

Re: Impressão de formulário a partir de banco de dados

Enviado: 12 Mar 2021 às 17:40
por fernandogaseo
Mano, mais uma vez, muito, muito obrigado... agora fechou.

Espero poder retribuir um dia, abraço