![]() |
#1
|
|||
|
|||
![]()
Hi Everyone,
So I am have a code that I got for Excel to print the serial numbers sequentially but I am wondering what I would have to change in the code to work with a text field called Serialnumber to do the same as it does for Excel. Here is the code. I am not very good with VBA so that is why I am coming here for help. ub PrintJobs() Dim i As Long, startnum As Long, lastnum As Long startnum = Application.InputBox("Enter the first job number to be printed", "Print Job Number", 1, , , , , 1) lastnum = Application.InputBox("Enter the last job number to be printed", "Print Job Number", 1, , , , , 1) For i = startnum To lastnum Range("D7").Value = i ActiveWindow.SelectedSheets.PrintOut Next End Sub |
#2
|
||||
|
||||
![]()
Insert a text content control where you want the number to be displayed and title it Startnumber then:
Code:
Sub PrintJobs() Dim i As Long, startnum As Long, lastnum As Long startnum = InputBox("Enter the first job number to be printed", "Print Job Number", 1) lastnum = InputBox("Enter the last job number to be printed", "Print Job Number", 1) For i = startnum To lastnum ActiveDocument.SelectContentControlsByTitle("Serialnumber").Item(1).Range.Text = i ActiveDocument.PrintOut Next End Sub
__________________
Graham Mayor - MS MVP (Word) (2002-2019) Visit my web site for more programming tips and ready made processes www.gmayor.com |
#3
|
|||
|
|||
![]()
Hi Gmayor,
So I am trying the code and when I run it I get an error that states: Run-time error 5941 The requested member of the collection does not exist. I have put in a legacy text field and named it with Serialnumber and then what you said to name it as Startnumber and neither of them work and I get the same message. Is there another content control that I should be using? I am using word 2010 if that makes any difference. |
#4
|
|||
|
|||
![]()
Well ignore my last post. I found which content control it needed to be. So now it works except for one thing. My serial numbers that I use will sometimes start with a 0 because I use the month and year as my first 4 numbers. However when I enter in say 0819xxxx it does not print the 0.Is there a way to make it so it will print the zero as well?
Also is there a way that I could create a command button on the word doc that would have this code in it to print of the serial numbers but to hide the command button when printing? Last edited by limdul9992; 08-20-2019 at 09:05 AM. Reason: Added question about a command button. |
#5
|
||||
|
||||
![]()
The following will add the data and the number with a leading zero
Code:
Sub PrintJobs() Dim i As Long, startnum As Long, lastnum As Long Dim orng As Range Set orng = ActiveDocument.SelectContentControlsByTitle("Serialnumber").Item(1).Range startnum = InputBox("Enter the first job number to be printed", "Print Job Number", 1) lastnum = InputBox("Enter the last job number to be printed", "Print Job Number", 1) For i = startnum To lastnum orng.Text = Format(Date, "mmyy") & Format(i, "00") ActiveDocument.PrintOut Next Set orng = Nothing End Sub
__________________
Graham Mayor - MS MVP (Word) (2002-2019) Visit my web site for more programming tips and ready made processes www.gmayor.com Last edited by gmayor; 08-21-2019 at 08:19 PM. |
#6
|
|||
|
|||
![]()
Thank you very much Gmayor. That works perfectly. Thank you very much for your help.
|
![]() |
|
![]() |
||||
Thread | Thread Starter | Forum | Replies | Last Post |
![]() |
4ener | Word | 9 | 02-24-2019 07:50 AM |
Sequential numbering in Word - Unique numbers for table rows | krips | Word | 1 | 03-21-2018 05:06 AM |
![]() |
srinivasaru | Excel Programming | 8 | 04-03-2017 12:53 PM |
![]() |
woodyear99 | Word | 1 | 07-18-2016 08:28 PM |
![]() |
atomtm | Word | 1 | 06-15-2012 05:39 AM |