cristiano_vioto 21/5/2015, 13:13
Bom dia,
Nada ainda.
Estou com esse código abaixo, mas nao aparece (filtrado) no relatorio o que foi digitado nas inputboxes.
No módulo do banco de dados:
Option Compare Database
Option Explicit
' Obtido no artigo 95806 - "ACC: How to Skip Used Mailing Labels
' and Print Duplicates", da Microsoft Knowledge Base.
' http://support.microsoft.com/?kbid=95806
Dim LabelBlanks% ' O símbolo '%' significa Integer
Dim LabelCopies%
Dim BlankCount%
Dim CopyCount%
'============================================================
' A seguinte função, colocada no evento Ao Abrir do Re-
' latório, abrirá uma Input Box perguntando ao usuário
' qual o número de etiquetas usadas anteriormente a ser
' pulado e quantas cópias de cada etiqueta serão impressas
'============================================================
Function LabelSetup()
LabelBlanks% = Val(InputBox$("Entre com o nº de etiquetas já usadas." _
& vbCrLf & "As etiquetas usadas serão puladas.", "Imprime Etiqueta"))
LabelCopies% = Val(InputBox$("Entre com o nº de cópias a imprimir" & vbCrLf _
& "de cada etiqueta.", "Imprime Etiqueta"))
If LabelBlanks% < 0 Then LabelBlanks% = 0
If LabelCopies% < 1 Then LabelCopies% = 1
End Function
'===========================================================
' A seguinte função torna as variáveis igual a zero e é
' usada no evento Ao Formatar do cabeçalho do Relatório.
'===========================================================
Function LabelInitialize()
BlankCount% = 0
CopyCount% = 0
End Function
'===========================================================
' A seguinte função é a parte principal deste código que
' permite que as etiquetas sejam impressas conforme o
' desejo do usuário manifestado nas Input Boxes.
' Deve ser colocada no evento OnPrint da Seção Detalhe.
'===========================================================
Function LabelLayout(R As Report)
If BlankCount% < LabelBlanks% Then
R.NextRecord = False
R.PrintSection = False
BlankCount% = BlankCount% + 1
Else
If CopyCount% < (LabelCopies% - 1) Then
R.NextRecord = False
CopyCount% = CopyCount% + 1
Else
CopyCount% = 0
End If
End If
End Function
Será que alguém saberia me dizer onde estou errando.
Aparece tudo certinho quando vai abrir o relatório, mas no relatório aparece a folha preenchida inteira como se não tivesse filtrando o que eu digitei nas input.
Alguém pode me esclarecer esta dúvida?
Obrigado