fabianobilo 2/2/2021, 16:47
Olá!
Criei na tabela campo Sel:Sim/Não e criei uma lista com os seguintes comandos
Botão: Marcar todos
On Error GoTo MarcarTodos_Click_Erro
DoCmd.SetWarnings False
DoCmd.RunSQL "UPDATE sua consulta SET Sel=-1"
DoCmd.SetWarnings True
Me.Lista = Empty
Me.Lista.Requery
On Error GoTo 0
Exit Sub
MarcarTodos_Click_Erro:
DoCmd.Hourglass False
End Sub
Botão: desmarcar
On Error GoTo MarcarTodos_Click_Erro
DoCmd.SetWarnings False
DoCmd.RunSQL "UPDATE sua consulta SET Sel=0"
DoCmd.SetWarnings True
Me.Lista = Empty
Me.Lista.Requery
On Error GoTo 0
Exit Sub
MarcarTodos_Click_Erro:
DoCmd.Hourglass False
End Sub
Criei um campo de pesquisas para pesquisar os itens a serem impressos
Ex: Nome_trecho
Botão: imprimir a seleção
Comando:
Private Sub GeraImpressao(TipoImpressao As Integer)
Dim Msg As String
On Error GoTo 1
Dim rst1 As Recordset
Dim Sel1 As String
If Nz(DCount("id da sua tabela", "sua tabela", "Sel = true"), 0) = 0 Then
MsgBox "Atenção; Não Foi Selecionado Nenhum Registro!", , "Atenção!"
Exit Sub
End If
Sel1 = "SELECT * from SuaTabelawhere Sel = True"
Set rst1 = CurrentDb.OpenRecordset(Sel1)
Do While Not rst1.EOF
If TipoImpressao = 1 Then
DoCmd.OpenReport "seu relatório", acViewNormal, , "id sua tabela=" & rst1![id da sua tabela]
Exit_1:
DoCmd.Hourglass False
DoCmd.Echo True
Exit Sub
1 a:
DoCmd.Hourglass False
DoCmd.Echo True
End Sub
Botão imprimir:
Dim Msg As String
On Error GoTo 1
Call GeraImpressao(1)
Exit_1:
DoCmd.Hourglass False
DoCmd.Echo True
Exit Sub
1 a:
DoCmd.Hourglass False
DoCmd.Echo True
End sub