meerdere dezekfde etiketten printen inclusief nummering per print

  • Onderwerp starter Onderwerp starter ydor
  • Startdatum Startdatum
Status
Niet open voor verdere reacties.

ydor

Nieuwe gebruiker
Lid geworden
12 apr 2012
Berichten
3
Hallo,

Ik wil graag op mijn formulier aan kunnen geven hoeveel potten er van iets zijn ontvangen. Aan dit aantal hangt dan het aantal te printen etiketten vast, dus als er 3 potten zijn ontvangen moet er 3 ingevuld worden en na een druk op de knop moeten er 3 "dezelfde" etiketten uit de printer komen. Tot zo ver lukt het mij. Maar wat ik nog zou willen is dat elk etiket genummerd word vanaf 1 t/m .. dus bij die 3 potten moet er op de etiketten 1 , 2 en 3 komen te staan. Ik heb hier op het forum deze vraag al eens voorbij zien komen, maar als ik die oplossing probeer, krijg ik het niet werkend. Ik heb nu onder de knop om de etiketten te printen de volgende code staan:

Private Sub Knop65_Click()
Dim i As Integer

a = Me![Aantal]
Do Until i = a
DoCmd.OpenReport "test", acViewNormal, acHidden, "[ID] = " & Me.ID & ""
i = i + 1
Loop
End Sub

En in de details van het rapport de volgende niet werkende code:

Private Sub Details_Print(Cancel As Integer, PrintCount As Integer)
Dim iPalAantal As Integer
iAantal = Me!Aantal
If PrintCount < iAantal Then
Me.NextRecord = False
End If
Me!VolgNummer = PrintCount
End Sub

Ik hoop dat iemand de oplossing heeft.

Alvast bedankt,

Rody
 
In bijgaand voorbeeld kun je via de knop <Labels afdrukken> aangeven op welk etiket je wilt beginnen, en hoeveel etiketten je wilt afdrukken. Vervolgens wordt het etiket opgebouwd met een teller. Kijk maar eens of je er wat aan hebt.
 

Bijlagen

Dank je voor je snelle reactie. Ik ben een middag bezig geweest me je voorbeeld en een deel is precies wat ik bedoel. Maar het feit dat ik niet heel veel kaas gegeten hebt van VBA, is het voor lastig om het deel er uit te filteren dat ik nodig heb. Er staat nl veel code in om een selectie te maken. En in mijn database wil ik alleen het huidige record wat open staat in het formulier afdrukken, en aan de hand van een ingevuld getal op dit formulier de aantal etiketten bepalen incl nummering(zoals in je voorbeeld)

Hopelijk heb je of iemand nog een oplossing/voorbeeld.

Rody
 
Maak een voorbeeldje van jouw situatie, dat werkt wat makkelijker. Nu weet ik niet wat je wel en niet nodig hebt.
 
Sorry,

Even druk gehad. Maar heb ondertussen het voor elkaar. Met de onderstaande code, wordt er iedere keer het nummer met 1 verhoogd en bestaat het nummer uit een drie letter code(vast) het huidige jaartal een het nummer.

Private Sub Form_Load()
Dim Jaar As String

Dim Hoogste As Integer




Jaar = Right(Year(Date), 2)


Hoogste = Val(Nz(DMax("Right(Sleutelveld,2)", "tblocw", "Left(Sleutelveld,6)='OCW" & Jaar & "-" & "'"), 0))



If Hoogste = 0 Then

Me.Sleutelveld = "OCW" & Jaar & "-" & "0001"

Else

If Hoogste = 9999 Then

MsgBox "Er zijn geen vrije nummers meer", vbCritical, "Nummers op"

Cancel = True

Else

Hoogste = Hoogste + 1

Me.Sleutelveld = "OCW" & Jaar & "-" & Format(Hoogste, "0000")

End If

End If



Me.Refresh
End Sub

Met dank aan Peter(access@xps350.com)
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan