Avatar billede porsager Nybegynder
30. september 2005 - 08:32 Der er 5 kommentarer og
1 løsning

Udskrift af samme rapport flere gange

Hej.

Jeg har en formel hvor der findes en knap til at udskrive en rapport.

denne knap ville jeg så gerne have til at udskrive 3 forskellige rapporter, hvoraf den ene skal udskrives (den samme) et hvis antal gange i forhold til hvad der er angivet i et felt i formen. Er dette muligt?
Kender ikke noget til VB, men kan forestille mig at det skal bruges for at gøre dette muligt.
Avatar billede mugs Novice
30. september 2005 - 08:41 #1
Dim i As Integer
Dim Antalex As Integer
If IsNull([Antal]) = -1 Then
MsgBox "Du har ikke indtastet antal eksemplarer."
Exit Sub
End If
Antalex = [Antal]
If Antalex <= 1 Then
MsgBox "Du har ikke indtastet antal eksemplarer."
Exit Sub
End If
For i = 1 To Antalex
DoCmd.OpenReport "Rapport2", acNormal, "", ""
Next i

Hvor Antal er et ubundet felt i formularen hvori du indtaster det antal gange rapporten skal udskrives.
Avatar billede porsager Nybegynder
30. september 2005 - 10:04 #2
Hold da op, det var godt nok hurtigt, og så virker det endda ;-) Når jeg så har de andre rapporter der kun skal skrives 1 kopi ud af, hvordan får jeg så også dem til at blive printet ud?
Avatar billede mugs Novice
30. september 2005 - 11:07 #3
Dem kan du blot udskrive først:

Dim i As Integer
Dim Antalex As Integer

DoCmd.OpenReport "Rapport0", acNormal, "", ""
DoCmd.OpenReport "Rapport2", acNormal, "", ""

If IsNull([Antal]) = -1 Then
MsgBox "Du har ikke indtastet antal eksemplarer."
Exit Sub
End If
Antalex = [Antal]
If Antalex <= 1 Then
MsgBox "Du har ikke indtastet antal eksemplarer."
Exit Sub
End If
For i = 1 To Antalex
DoCmd.OpenReport "Rapport2", acNormal, "", ""
Next i
Avatar billede porsager Nybegynder
30. september 2005 - 11:10 #4
Alle tiders, mange tak for hjælpen siger jeg så bare ;-)
Avatar billede mugs Novice
30. september 2005 - 11:31 #5
Selv tak - Og tak for point
Avatar billede mugs Novice
30. september 2005 - 11:46 #6
Det er måske mere smart at du udskriver i omvendt rækkefølge. Hvis du ikke indtaster et antal, så vil den forlade procedüren og du sidder med 2 usskrifter. Når du så prøver igen vil du igen udskrive de 2 rapporter + den 3. i x antal eksemplarer. Prøv denne i stedet:

Dim i As Integer
Dim Antalex As Integer
If IsNull([Antal]) = -1 Then
MsgBox "Du har ikke indtastet antal eksemplarer."
Exit Sub
End If
Antalex = [Antal]
If Antalex <= 1 Then
MsgBox "Du har ikke indtastet antal eksemplarer."
Exit Sub
End If
For i = 1 To Antalex
DoCmd.OpenReport "Rapport2", acNormal, "", ""
Next i
DoCmd.OpenReport "Rapport0", acNormal, "", ""
DoCmd.OpenReport "Rapport2", acNormal, "", ""
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester