|
|
Thanks for helping me as I am a beginner with mail merge. I have an Access database with information regarding perennial plants. I need to print labels for each one of the plants. My problem is that I can't figure out the mail merge to print more than one label at times. let's say I have plant "A" with a quantity of 20, I want to mail merge to print 20 labels of Plant "A" as well as carrying on printing the other labels also. Is it possible?
Thanks Denys
|
|
To do this, first you will need to create a catalog (or in Word XP and later, it is called "directory") type mailmerge in the maindocument of which you insert a one row table into the cells of which you insert the field names from your data source. If the number of labels required for each record is in the data source, insert the name of that field in the last cell of the row. If it is not contained in the data source, have one empty cell at the end of the row.
Then you execute that merge to a new document. The new document that is created will contain a row of data for each record in the data source. If the data source did not include a field with the required number of each label, enter those numbers in the last column of the table in this new document.
Then with that document as the active document, run a macro that contains the following code:
Dim i As Long, j As Long, k As Long, numlabels As Long Dim source As Document Dim stable As Table, ttable As Table Dim arow As Row Dim numrange As Range
Set source = ActiveDocument Set stable = source.Tables(1) k = stable.Columns.Count For i = stable.Rows.Count To 1 Step -1 Set numrange = stable.Cell(i, k).Range numrange.End = numrange.End - 1 numlabels = Val(numrange.Text) If numlabels > 1 Then stable.Rows(i).Range.Copy For j = 2 To numlabels stable.Rows(i).Range.Paste Next j End If Next i
This will increase the number of rows of data for each record to the number of labels that you want. Now, you must insert a row at the top of this document and enter the field names into the cells of that row. Then save this document and use it as the data source for creating your labels by mail merge.
-- Hope this helps.
Please reply to the newsgroup unless you wish to avail yourself of my services on a paid consulting basis.
Doug Robbins - Word MVP
"Denys" <denys[ at ]dccnet.com> wrote in message news:137qnn9a22tbi72[ at ]corp.supernews.com...
[Quoted Text] > Thanks for helping me as I am a beginner with mail merge. > I have an Access database with information regarding perennial plants. I > need to print labels for each one of the plants. My problem is that I > can't figure out the mail merge to print more than one label at times. > let's say I have plant "A" with a quantity of 20, I want to mail merge to > print 20 labels of Plant "A" as well as carrying on printing the other > labels also. Is it possible? > > Thanks > Denys >
|
|
Hi Doug, I did what you said but it is not working. Maybe I need to change something in the macro language?? The field containing the number of each label is called: "Quantity". Not sure where to go from here.
Tx Denys
"Doug Robbins - Word MVP" wrote:
[Quoted Text] > To do this, first you will need to create a catalog (or in Word XP and > later, it is called "directory") type mailmerge in the maindocument of which > you insert a one row table into the cells of which you insert the field > names from your data source. > If the number of labels required for each record is in the data source, > insert the name of that field in the last cell of the row. If it is not > contained in the data source, have one empty cell at the end of the row. > > Then you execute that merge to a new document. The new document that is > created will contain a row of data for each record in the data source. If > the data source did not include a field with the required number of each > label, enter those numbers in the last column of the table in this new > document. > > Then with that document as the active document, run a macro that contains > the following code: > > Dim i As Long, j As Long, k As Long, numlabels As Long > Dim source As Document > Dim stable As Table, ttable As Table > Dim arow As Row > Dim numrange As Range > > Set source = ActiveDocument > Set stable = source.Tables(1) > k = stable.Columns.Count > For i = stable.Rows.Count To 1 Step -1 > Set numrange = stable.Cell(i, k).Range > numrange.End = numrange.End - 1 > numlabels = Val(numrange.Text) > If numlabels > 1 Then > stable.Rows(i).Range.Copy > For j = 2 To numlabels > stable.Rows(i).Range.Paste > Next j > End If > Next i > > This will increase the number of rows of data for each record to the number > of labels that you want. Now, you must insert a row at the top of this > document and enter the field names into the cells of that row. Then save > this document and use it as the data source for creating your labels by mail > merge. > > -- > Hope this helps. > > Please reply to the newsgroup unless you wish to avail yourself of my > services on a paid consulting basis. > > Doug Robbins - Word MVP > > "Denys" <denys[ at ]dccnet.com> wrote in message > news:137qnn9a22tbi72[ at ]corp.supernews.com... > > Thanks for helping me as I am a beginner with mail merge. > > I have an Access database with information regarding perennial plants. I > > need to print labels for each one of the plants. My problem is that I > > can't figure out the mail merge to print more than one label at times. > > let's say I have plant "A" with a quantity of 20, I want to mail merge to > > print 20 labels of Plant "A" as well as carrying on printing the other > > labels also. Is it possible? > > > > Thanks > > Denys > > > > >
|
|
Tell me exactly what you did.
Did you have the quantity field as the last field in the catalog or directory type mail merge main document?
When you executed that merge to a new document, what did you get?
-- Hope this helps.
Please reply to the newsgroup unless you wish to avail yourself of my services on a paid consulting basis.
Doug Robbins - Word MVP
"Denys" <Denys[ at ]discussions.microsoft.com> wrote in message news:2B97AB21-421C-4E07-8FE6-ABF1D929E827[ at ]microsoft.com...
[Quoted Text] > Hi Doug, > I did what you said but it is not working. Maybe I need to change > something > in the macro language?? The field containing the number of each label is > called: "Quantity". Not sure where to go from here. > > Tx > Denys > > "Doug Robbins - Word MVP" wrote: > >> To do this, first you will need to create a catalog (or in Word XP and >> later, it is called "directory") type mailmerge in the maindocument of >> which >> you insert a one row table into the cells of which you insert the field >> names from your data source. >> If the number of labels required for each record is in the data source, >> insert the name of that field in the last cell of the row. If it is not >> contained in the data source, have one empty cell at the end of the row. >> >> Then you execute that merge to a new document. The new document that is >> created will contain a row of data for each record in the data source. >> If >> the data source did not include a field with the required number of each >> label, enter those numbers in the last column of the table in this new >> document. >> >> Then with that document as the active document, run a macro that contains >> the following code: >> >> Dim i As Long, j As Long, k As Long, numlabels As Long >> Dim source As Document >> Dim stable As Table, ttable As Table >> Dim arow As Row >> Dim numrange As Range >> >> Set source = ActiveDocument >> Set stable = source.Tables(1) >> k = stable.Columns.Count >> For i = stable.Rows.Count To 1 Step -1 >> Set numrange = stable.Cell(i, k).Range >> numrange.End = numrange.End - 1 >> numlabels = Val(numrange.Text) >> If numlabels > 1 Then >> stable.Rows(i).Range.Copy >> For j = 2 To numlabels >> stable.Rows(i).Range.Paste >> Next j >> End If >> Next i >> >> This will increase the number of rows of data for each record to the >> number >> of labels that you want. Now, you must insert a row at the top of this >> document and enter the field names into the cells of that row. Then save >> this document and use it as the data source for creating your labels by >> mail >> merge. >> >> -- >> Hope this helps. >> >> Please reply to the newsgroup unless you wish to avail yourself of my >> services on a paid consulting basis. >> >> Doug Robbins - Word MVP >> >> "Denys" <denys[ at ]dccnet.com> wrote in message >> news:137qnn9a22tbi72[ at ]corp.supernews.com... >> > Thanks for helping me as I am a beginner with mail merge. >> > I have an Access database with information regarding perennial plants. >> > I >> > need to print labels for each one of the plants. My problem is that I >> > can't figure out the mail merge to print more than one label at times. >> > let's say I have plant "A" with a quantity of 20, I want to mail merge >> > to >> > print 20 labels of Plant "A" as well as carrying on printing the other >> > labels also. Is it possible? >> > >> > Thanks >> > Denys >> > >> >> >>
|
|
ok, I'm using Office XP. the page has 10 row/labels. each label contains:
«Next Record» «Name» «Cultivar» «CommonName» Potted on:«DateRepotted» ID#:«IDNumber» «Quantity»
except for the first row where the <next record> is not there.
When I executed the merge to a new document, I get several pages of labels but only one label of each, some records have 2 - 12 as quantity, but only one label is printed.
I executed the macro after the new document was created, and nothing happened.
Denys
"Doug Robbins - Word MVP" wrote:
[Quoted Text] > Tell me exactly what you did. > > Did you have the quantity field as the last field in the catalog or > directory type mail merge main document? > > When you executed that merge to a new document, what did you get? > > -- > Hope this helps. > > Please reply to the newsgroup unless you wish to avail yourself of my > services on a paid consulting basis. > > Doug Robbins - Word MVP > > "Denys" <Denys[ at ]discussions.microsoft.com> wrote in message > news:2B97AB21-421C-4E07-8FE6-ABF1D929E827[ at ]microsoft.com... > > Hi Doug, > > I did what you said but it is not working. Maybe I need to change > > something > > in the macro language?? The field containing the number of each label is > > called: "Quantity". Not sure where to go from here. > > > > Tx > > Denys > > > > "Doug Robbins - Word MVP" wrote: > > > >> To do this, first you will need to create a catalog (or in Word XP and > >> later, it is called "directory") type mailmerge in the maindocument of > >> which > >> you insert a one row table into the cells of which you insert the field > >> names from your data source. > >> If the number of labels required for each record is in the data source, > >> insert the name of that field in the last cell of the row. If it is not > >> contained in the data source, have one empty cell at the end of the row. > >> > >> Then you execute that merge to a new document. The new document that is > >> created will contain a row of data for each record in the data source. > >> If > >> the data source did not include a field with the required number of each > >> label, enter those numbers in the last column of the table in this new > >> document. > >> > >> Then with that document as the active document, run a macro that contains > >> the following code: > >> > >> Dim i As Long, j As Long, k As Long, numlabels As Long > >> Dim source As Document > >> Dim stable As Table, ttable As Table > >> Dim arow As Row > >> Dim numrange As Range > >> > >> Set source = ActiveDocument > >> Set stable = source.Tables(1) > >> k = stable.Columns.Count > >> For i = stable.Rows.Count To 1 Step -1 > >> Set numrange = stable.Cell(i, k).Range > >> numrange.End = numrange.End - 1 > >> numlabels = Val(numrange.Text) > >> If numlabels > 1 Then > >> stable.Rows(i).Range.Copy > >> For j = 2 To numlabels > >> stable.Rows(i).Range.Paste > >> Next j > >> End If > >> Next i > >> > >> This will increase the number of rows of data for each record to the > >> number > >> of labels that you want. Now, you must insert a row at the top of this > >> document and enter the field names into the cells of that row. Then save > >> this document and use it as the data source for creating your labels by > >> mail > >> merge. > >> > >> -- > >> Hope this helps. > >> > >> Please reply to the newsgroup unless you wish to avail yourself of my > >> services on a paid consulting basis. > >> > >> Doug Robbins - Word MVP > >> > >> "Denys" <denys[ at ]dccnet.com> wrote in message > >> news:137qnn9a22tbi72[ at ]corp.supernews.com... > >> > Thanks for helping me as I am a beginner with mail merge. > >> > I have an Access database with information regarding perennial plants. > >> > I > >> > need to print labels for each one of the plants. My problem is that I > >> > can't figure out the mail merge to print more than one label at times. > >> > let's say I have plant "A" with a quantity of 20, I want to mail merge > >> > to > >> > print 20 labels of Plant "A" as well as carrying on printing the other > >> > labels also. Is it possible? > >> > > >> > Thanks > >> > Denys > >> > > >> > >> > >> > > >
|
|
No wonder it does not work. You have not followed the instructions that I gave you which were:
To do this, first you will need to create a catalog (or in Word XP and later, it is called "directory") type mailmerge in the maindocument of which you insert a one row table into the cells of which you insert the field names from your data source. If the number of labels required for each record is in the data source, insert the name of that field in the last cell of the row. If it is not contained in the data source, have one empty cell at the end of the row.
Then you execute that merge to a new document. The new document that is created will contain a row of data for each record in the data source. If the data source did not include a field with the required number of each label, enter those numbers in the last column of the table in this new document.
Then with that document as the active document, run a macro that contains the following code:
Dim i As Long, j As Long, k As Long, numlabels As Long Dim source As Document Dim stable As Table, ttable As Table Dim arow As Row Dim numrange As Range
Set source = ActiveDocument Set stable = source.Tables(1) k = stable.Columns.Count For i = stable.Rows.Count To 1 Step -1 Set numrange = stable.Cell(i, k).Range numrange.End = numrange.End - 1 numlabels = Val(numrange.Text) If numlabels > 1 Then stable.Rows(i).Range.Copy For j = 2 To numlabels stable.Rows(i).Range.Paste Next j End If Next i
This will increase the number of rows of data for each record to the number of labels that you want. Now, you must insert a row at the top of this document and enter the field names into the cells of that row. Then save this document and use it as the data source for creating your labels by mail merge.
Please read the whole thing and do exactly as I have instructed WITHOUT LEAVING OUT ANY OF THE STEPS.
-- Hope this helps.
Please reply to the newsgroup unless you wish to avail yourself of my services on a paid consulting basis.
Doug Robbins - Word MVP
"Denys" <Denys[ at ]discussions.microsoft.com> wrote in message news:2DD5E706-ED52-4093-AF99-652117E4A25C[ at ]microsoft.com...
[Quoted Text] > ok, I'm using Office XP. the page has 10 row/labels. > each label contains: > > «Next Record» «Name» «Cultivar» > «CommonName» > Potted on:«DateRepotted» ID#:«IDNumber» «Quantity» > > except for the first row where the <next record> is not there. > > When I executed the merge to a new document, I get several pages of labels > but only one label of each, some records have 2 - 12 as quantity, but only > one label is printed. > > I executed the macro after the new document was created, and nothing > happened. > > Denys > > > "Doug Robbins - Word MVP" wrote: > >> Tell me exactly what you did. >> >> Did you have the quantity field as the last field in the catalog or >> directory type mail merge main document? >> >> When you executed that merge to a new document, what did you get? >> >> -- >> Hope this helps. >> >> Please reply to the newsgroup unless you wish to avail yourself of my >> services on a paid consulting basis. >> >> Doug Robbins - Word MVP >> >> "Denys" <Denys[ at ]discussions.microsoft.com> wrote in message >> news:2B97AB21-421C-4E07-8FE6-ABF1D929E827[ at ]microsoft.com... >> > Hi Doug, >> > I did what you said but it is not working. Maybe I need to change >> > something >> > in the macro language?? The field containing the number of each label >> > is >> > called: "Quantity". Not sure where to go from here. >> > >> > Tx >> > Denys >> > >> > "Doug Robbins - Word MVP" wrote: >> > >> >> To do this, first you will need to create a catalog (or in Word XP and >> >> later, it is called "directory") type mailmerge in the maindocument of >> >> which >> >> you insert a one row table into the cells of which you insert the >> >> field >> >> names from your data source. >> >> If the number of labels required for each record is in the data >> >> source, >> >> insert the name of that field in the last cell of the row. If it is >> >> not >> >> contained in the data source, have one empty cell at the end of the >> >> row. >> >> >> >> Then you execute that merge to a new document. The new document that >> >> is >> >> created will contain a row of data for each record in the data source. >> >> If >> >> the data source did not include a field with the required number of >> >> each >> >> label, enter those numbers in the last column of the table in this new >> >> document. >> >> >> >> Then with that document as the active document, run a macro that >> >> contains >> >> the following code: >> >> >> >> Dim i As Long, j As Long, k As Long, numlabels As Long >> >> Dim source As Document >> >> Dim stable As Table, ttable As Table >> >> Dim arow As Row >> >> Dim numrange As Range >> >> >> >> Set source = ActiveDocument >> >> Set stable = source.Tables(1) >> >> k = stable.Columns.Count >> >> For i = stable.Rows.Count To 1 Step -1 >> >> Set numrange = stable.Cell(i, k).Range >> >> numrange.End = numrange.End - 1 >> >> numlabels = Val(numrange.Text) >> >> If numlabels > 1 Then >> >> stable.Rows(i).Range.Copy >> >> For j = 2 To numlabels >> >> stable.Rows(i).Range.Paste >> >> Next j >> >> End If >> >> Next i >> >> >> >> This will increase the number of rows of data for each record to the >> >> number >> >> of labels that you want. Now, you must insert a row at the top of >> >> this >> >> document and enter the field names into the cells of that row. Then >> >> save >> >> this document and use it as the data source for creating your labels >> >> by >> >> mail >> >> merge. >> >> >> >> -- >> >> Hope this helps. >> >> >> >> Please reply to the newsgroup unless you wish to avail yourself of my >> >> services on a paid consulting basis. >> >> >> >> Doug Robbins - Word MVP >> >> >> >> "Denys" <denys[ at ]dccnet.com> wrote in message >> >> news:137qnn9a22tbi72[ at ]corp.supernews.com... >> >> > Thanks for helping me as I am a beginner with mail merge. >> >> > I have an Access database with information regarding perennial >> >> > plants. >> >> > I >> >> > need to print labels for each one of the plants. My problem is that >> >> > I >> >> > can't figure out the mail merge to print more than one label at >> >> > times. >> >> > let's say I have plant "A" with a quantity of 20, I want to mail >> >> > merge >> >> > to >> >> > print 20 labels of Plant "A" as well as carrying on printing the >> >> > other >> >> > labels also. Is it possible? >> >> > >> >> > Thanks >> >> > Denys >> >> > >> >> >> >> >> >> >> >> >>
|
|
Will be able to use this in my next endevor Thanks Doug
"Doug Robbins - Word MVP" wrote:
[Quoted Text] > To do this, first you will need to create a catalog (or in Word XP and > later, it is called "directory") type mailmerge in the maindocument of which > you insert a one row table into the cells of which you insert the field > names from your data source. > If the number of labels required for each record is in the data source, > insert the name of that field in the last cell of the row. If it is not > contained in the data source, have one empty cell at the end of the row. > > Then you execute that merge to a new document. The new document that is > created will contain a row of data for each record in the data source. If > the data source did not include a field with the required number of each > label, enter those numbers in the last column of the table in this new > document. > > Then with that document as the active document, run a macro that contains > the following code: > > Dim i As Long, j As Long, k As Long, numlabels As Long > Dim source As Document > Dim stable As Table, ttable As Table > Dim arow As Row > Dim numrange As Range > > Set source = ActiveDocument > Set stable = source.Tables(1) > k = stable.Columns.Count > For i = stable.Rows.Count To 1 Step -1 > Set numrange = stable.Cell(i, k).Range > numrange.End = numrange.End - 1 > numlabels = Val(numrange.Text) > If numlabels > 1 Then > stable.Rows(i).Range.Copy > For j = 2 To numlabels > stable.Rows(i).Range.Paste > Next j > End If > Next i > > This will increase the number of rows of data for each record to the number > of labels that you want. Now, you must insert a row at the top of this > document and enter the field names into the cells of that row. Then save > this document and use it as the data source for creating your labels by mail > merge. > > -- > Hope this helps. > > Please reply to the newsgroup unless you wish to avail yourself of my > services on a paid consulting basis. > > Doug Robbins - Word MVP > > "Denys" <denys[ at ]dccnet.com> wrote in message > news:137qnn9a22tbi72[ at ]corp.supernews.com... > > Thanks for helping me as I am a beginner with mail merge. > > I have an Access database with information regarding perennial plants. I > > need to print labels for each one of the plants. My problem is that I > > can't figure out the mail merge to print more than one label at times. > > let's say I have plant "A" with a quantity of 20, I want to mail merge to > > print 20 labels of Plant "A" as well as carrying on printing the other > > labels also. Is it possible? > > > > Thanks > > Denys > > > > >
|
|
I'm sorry about your frustration, I finally got it work. Being a newbie at this, I had a hard time understanding the process.
THanks so much for your help and patience.
Denys
"Doug Robbins - Word MVP" wrote:
[Quoted Text] > No wonder it does not work. You have not followed the instructions that I > gave you which were: > > To do this, first you will need to create a catalog (or in Word XP and > later, it is called "directory") type mailmerge in the maindocument of which > you insert a one row table into the cells of which you insert the field > names from your data source. > If the number of labels required for each record is in the data source, > insert the name of that field in the last cell of the row. If it is not > contained in the data source, have one empty cell at the end of the row. > > Then you execute that merge to a new document. The new document that is > created will contain a row of data for each record in the data source. If > the data source did not include a field with the required number of each > label, enter those numbers in the last column of the table in this new > document. > > Then with that document as the active document, run a macro that contains > the following code: > > Dim i As Long, j As Long, k As Long, numlabels As Long > Dim source As Document > Dim stable As Table, ttable As Table > Dim arow As Row > Dim numrange As Range > > Set source = ActiveDocument > Set stable = source.Tables(1) > k = stable.Columns.Count > For i = stable.Rows.Count To 1 Step -1 > Set numrange = stable.Cell(i, k).Range > numrange.End = numrange.End - 1 > numlabels = Val(numrange.Text) > If numlabels > 1 Then > stable.Rows(i).Range.Copy > For j = 2 To numlabels > stable.Rows(i).Range.Paste > Next j > End If > Next i > > This will increase the number of rows of data for each record to the number > of labels that you want. Now, you must insert a row at the top of this > document and enter the field names into the cells of that row. Then save > this document and use it as the data source for creating your labels by mail > merge. > > Please read the whole thing and do exactly as I have instructed WITHOUT > LEAVING OUT ANY OF THE STEPS. > > -- > Hope this helps. > > Please reply to the newsgroup unless you wish to avail yourself of my > services on a paid consulting basis. > > Doug Robbins - Word MVP > > "Denys" <Denys[ at ]discussions.microsoft.com> wrote in message > news:2DD5E706-ED52-4093-AF99-652117E4A25C[ at ]microsoft.com... > > ok, I'm using Office XP. the page has 10 row/labels. > > each label contains: > > > > «Next Record» «Name» «Cultivar» > > «CommonName» > > Potted on:«DateRepotted» ID#:«IDNumber» «Quantity» > > > > except for the first row where the <next record> is not there. > > > > When I executed the merge to a new document, I get several pages of labels > > but only one label of each, some records have 2 - 12 as quantity, but only > > one label is printed. > > > > I executed the macro after the new document was created, and nothing > > happened. > > > > Denys > > > > > > "Doug Robbins - Word MVP" wrote: > > > >> Tell me exactly what you did. > >> > >> Did you have the quantity field as the last field in the catalog or > >> directory type mail merge main document? > >> > >> When you executed that merge to a new document, what did you get? > >> > >> -- > >> Hope this helps. > >> > >> Please reply to the newsgroup unless you wish to avail yourself of my > >> services on a paid consulting basis. > >> > >> Doug Robbins - Word MVP > >> > >> "Denys" <Denys[ at ]discussions.microsoft.com> wrote in message > >> news:2B97AB21-421C-4E07-8FE6-ABF1D929E827[ at ]microsoft.com... > >> > Hi Doug, > >> > I did what you said but it is not working. Maybe I need to change > >> > something > >> > in the macro language?? The field containing the number of each label > >> > is > >> > called: "Quantity". Not sure where to go from here. > >> > > >> > Tx > >> > Denys > >> > > >> > "Doug Robbins - Word MVP" wrote: > >> > > >> >> To do this, first you will need to create a catalog (or in Word XP and > >> >> later, it is called "directory") type mailmerge in the maindocument of > >> >> which > >> >> you insert a one row table into the cells of which you insert the > >> >> field > >> >> names from your data source. > >> >> If the number of labels required for each record is in the data > >> >> source, > >> >> insert the name of that field in the last cell of the row. If it is > >> >> not > >> >> contained in the data source, have one empty cell at the end of the > >> >> row. > >> >> > >> >> Then you execute that merge to a new document. The new document that > >> >> is > >> >> created will contain a row of data for each record in the data source. > >> >> If > >> >> the data source did not include a field with the required number of > >> >> each > >> >> label, enter those numbers in the last column of the table in this new > >> >> document. > >> >> > >> >> Then with that document as the active document, run a macro that > >> >> contains > >> >> the following code: > >> >> > >> >> Dim i As Long, j As Long, k As Long, numlabels As Long > >> >> Dim source As Document > >> >> Dim stable As Table, ttable As Table > >> >> Dim arow As Row > >> >> Dim numrange As Range > >> >> > >> >> Set source = ActiveDocument > >> >> Set stable = source.Tables(1) > >> >> k = stable.Columns.Count > >> >> For i = stable.Rows.Count To 1 Step -1 > >> >> Set numrange = stable.Cell(i, k).Range > >> >> numrange.End = numrange.End - 1 > >> >> numlabels = Val(numrange.Text) > >> >> If numlabels > 1 Then > >> >> stable.Rows(i).Range.Copy > >> >> For j = 2 To numlabels > >> >> stable.Rows(i).Range.Paste > >> >> Next j > >> >> End If > >> >> Next i > >> >> > >> >> This will increase the number of rows of data for each record to the > >> >> number > >> >> of labels that you want. Now, you must insert a row at the top of > >> >> this > >> >> document and enter the field names into the cells of that row. Then > >> >> save > >> >> this document and use it as the data source for creating your labels > >> >> by > >> >> mail > >> >> merge. > >> >> > >> >> -- > >> >> Hope this helps. > >> >> > >> >> Please reply to the newsgroup unless you wish to avail yourself of my > >> >> services on a paid consulting basis. > >> >> > >> >> Doug Robbins - Word MVP > >> >> > >> >> "Denys" <denys[ at ]dccnet.com> wrote in message > >> >> news:137qnn9a22tbi72[ at ]corp.supernews.com... > >> >> > Thanks for helping me as I am a beginner with mail merge. > >> >> > I have an Access database with information regarding perennial > >> >> > plants. > >> >> > I > >> >> > need to print labels for each one of the plants. My problem is that > >> >> > I > >> >> > can't figure out the mail merge to print more than one label at > >> >> > times. > >> >> > let's say I have plant "A" with a quantity of 20, I want to mail > >> >> > merge > >> >> > to > >> >> > print 20 labels of Plant "A" as well as carrying on printing the > >> >> > other > >> >> > labels also. Is it possible? > >> >> > > >> >> > Thanks > >> >> > Denys > >> >> > > >> >> > >> >> > >> >> > >> > >> > >> > > >
|
|
denys, I did not exactly follow the instructins laid by Mr. Robbins since this code things are still out of my reach. Will you please be kind enough to describe me step by step again, and how did you do it, for me? I seem to be a more recent newbie than you!. thabnking you. Dr. H.R.Shah
"Denys" wrote:
[Quoted Text] > I'm sorry about your frustration, I finally got it work. Being a newbie at > this, I had a hard time understanding the process. > > THanks so much for your help and patience. > > Denys > > "Doug Robbins - Word MVP" wrote: > > > No wonder it does not work. You have not followed the instructions that I > > gave you which were: > > > > To do this, first you will need to create a catalog (or in Word XP and > > later, it is called "directory") type mailmerge in the maindocument of which > > you insert a one row table into the cells of which you insert the field > > names from your data source. > > If the number of labels required for each record is in the data source, > > insert the name of that field in the last cell of the row. If it is not > > contained in the data source, have one empty cell at the end of the row. > > > > Then you execute that merge to a new document. The new document that is > > created will contain a row of data for each record in the data source. If > > the data source did not include a field with the required number of each > > label, enter those numbers in the last column of the table in this new > > document. > > > > Then with that document as the active document, run a macro that contains > > the following code: > > > > Dim i As Long, j As Long, k As Long, numlabels As Long > > Dim source As Document > > Dim stable As Table, ttable As Table > > Dim arow As Row > > Dim numrange As Range > > > > Set source = ActiveDocument > > Set stable = source.Tables(1) > > k = stable.Columns.Count > > For i = stable.Rows.Count To 1 Step -1 > > Set numrange = stable.Cell(i, k).Range > > numrange.End = numrange.End - 1 > > numlabels = Val(numrange.Text) > > If numlabels > 1 Then > > stable.Rows(i).Range.Copy > > For j = 2 To numlabels > > stable.Rows(i).Range.Paste > > Next j > > End If > > Next i > > > > This will increase the number of rows of data for each record to the number > > of labels that you want. Now, you must insert a row at the top of this > > document and enter the field names into the cells of that row. Then save > > this document and use it as the data source for creating your labels by mail > > merge. > > > > Please read the whole thing and do exactly as I have instructed WITHOUT > > LEAVING OUT ANY OF THE STEPS. > > > > -- > > Hope this helps. > > > > Please reply to the newsgroup unless you wish to avail yourself of my > > services on a paid consulting basis. > > > > Doug Robbins - Word MVP > > > > "Denys" <Denys[ at ]discussions.microsoft.com> wrote in message > > news:2DD5E706-ED52-4093-AF99-652117E4A25C[ at ]microsoft.com... > > > ok, I'm using Office XP. the page has 10 row/labels. > > > each label contains: > > > > > > «Next Record» «Name» «Cultivar» > > > «CommonName» > > > Potted on:«DateRepotted» ID#:«IDNumber» «Quantity» > > > > > > except for the first row where the <next record> is not there. > > > > > > When I executed the merge to a new document, I get several pages of labels > > > but only one label of each, some records have 2 - 12 as quantity, but only > > > one label is printed. > > > > > > I executed the macro after the new document was created, and nothing > > > happened. > > > > > > Denys > > > > > > > > > "Doug Robbins - Word MVP" wrote: > > > > > >> Tell me exactly what you did. > > >> > > >> Did you have the quantity field as the last field in the catalog or > > >> directory type mail merge main document? > > >> > > >> When you executed that merge to a new document, what did you get? > > >> > > >> -- > > >> Hope this helps. > > >> > > >> Please reply to the newsgroup unless you wish to avail yourself of my > > >> services on a paid consulting basis. > > >> > > >> Doug Robbins - Word MVP > > >> > > >> "Denys" <Denys[ at ]discussions.microsoft.com> wrote in message > > >> news:2B97AB21-421C-4E07-8FE6-ABF1D929E827[ at ]microsoft.com... > > >> > Hi Doug, > > >> > I did what you said but it is not working. Maybe I need to change > > >> > something > > >> > in the macro language?? The field containing the number of each label > > >> > is > > >> > called: "Quantity". Not sure where to go from here. > > >> > > > >> > Tx > > >> > Denys > > >> > > > >> > "Doug Robbins - Word MVP" wrote: > > >> > > > >> >> To do this, first you will need to create a catalog (or in Word XP and > > >> >> later, it is called "directory") type mailmerge in the maindocument of > > >> >> which > > >> >> you insert a one row table into the cells of which you insert the > > >> >> field > > >> >> names from your data source. > > >> >> If the number of labels required for each record is in the data > > >> >> source, > > >> >> insert the name of that field in the last cell of the row. If it is > > >> >> not > > >> >> contained in the data source, have one empty cell at the end of the > > >> >> row. > > >> >> > > >> >> Then you execute that merge to a new document. The new document that > > >> >> is > > >> >> created will contain a row of data for each record in the data source. > > >> >> If > > >> >> the data source did not include a field with the required number of > > >> >> each > > >> >> label, enter those numbers in the last column of the table in this new > > >> >> document. > > >> >> > > >> >> Then with that document as the active document, run a macro that > > >> >> contains > > >> >> the following code: > > >> >> > > >> >> Dim i As Long, j As Long, k As Long, numlabels As Long > > >> >> Dim source As Document > > >> >> Dim stable As Table, ttable As Table > > >> >> Dim arow As Row > > >> >> Dim numrange As Range > > >> >> > > >> >> Set source = ActiveDocument > > >> >> Set stable = source.Tables(1) > > >> >> k = stable.Columns.Count > > >> >> For i = stable.Rows.Count To 1 Step -1 > > >> >> Set numrange = stable.Cell(i, k).Range > > >> >> numrange.End = numrange.End - 1 > > >> >> numlabels = Val(numrange.Text) > > >> >> If numlabels > 1 Then > > >> >> stable.Rows(i).Range.Copy > > >> >> For j = 2 To numlabels > > >> >> stable.Rows(i).Range.Paste > > >> >> Next j > > >> >> End If > > >> >> Next i > > >> >> > > >> >> This will increase the number of rows of data for each record to the > > >> >> number > > >> >> of labels that you want. Now, you must insert a row at the top of > > >> >> this > > >> >> document and enter the field names into the cells of that row. Then > > >> >> save > > >> >> this document and use it as the data source for creating your labels > > >> >> by > > >> >> mail > > >> >> merge. > > >> >> > > >> >> -- > > >> >> Hope this helps. > > >> >> > > >> >> Please reply to the newsgroup unless you wish to avail yourself of my > > >> >> services on a paid consulting basis. > > >> >> > > >> >> Doug Robbins - Word MVP > > >> >> > > >> >> "Denys" <denys[ at ]dccnet.com> wrote in message > > >> >> news:137qnn9a22tbi72[ at ]corp.supernews.com... > > >> >> > Thanks for helping me as I am a beginner with mail merge. > > >> >> > I have an Access database with information regarding perennial > > >> >> > plants. > > >> >> > I > > >> >> > need to print labels for each one of the plants. My problem is that > > >> >> > I > > >> >> > can't figure out the mail merge to print more than one label at > > >> >> > times. > > >> >> > let's say I have plant "A" with a quantity of 20, I want to mail > > >> >> > merge > > >> >> > to > > >> >> > print 20 labels of Plant "A" as well as carrying on printing the > > >> >> > other > > >> >> > labels also. Is it possible? > > >> >> > > > >> >> > Thanks > > >> >> > Denys > > >> >> > > > >> >> > > >> >> > > >> >> > > >> > > >> > > >> > > > > > >
|
|
See the article "What do I do with macros sent to me by other newsgroup readers to help me out?" at:
http://www.word.mvps.org/FAQs/MacrosVBA/CreateAMacro.htm
-- Hope this helps.
Please reply to the newsgroup unless you wish to avail yourself of my services on a paid consulting basis.
Doug Robbins - Word MVP
"hirendra7158" <hirendra7158[ at ]discussions.microsoft.com> wrote in message news:91D23DB4-2851-4DA0-817B-3EDC337A020D[ at ]microsoft.com...
[Quoted Text] > denys, > I did not exactly follow the instructins laid by Mr. Robbins since this > code > things are still out of my reach. Will you please be kind enough to > describe > me step by step again, and how did you do it, for me? > I seem to be a more recent newbie than you!. > thabnking you. > Dr. H.R.Shah > > "Denys" wrote: > >> I'm sorry about your frustration, I finally got it work. Being a newbie >> at >> this, I had a hard time understanding the process. >> >> THanks so much for your help and patience. >> >> Denys >> >> "Doug Robbins - Word MVP" wrote: >> >> > No wonder it does not work. You have not followed the instructions that >> > I >> > gave you which were: >> > >> > To do this, first you will need to create a catalog (or in Word XP and >> > later, it is called "directory") type mailmerge in the maindocument of >> > which >> > you insert a one row table into the cells of which you insert the field >> > names from your data source. >> > If the number of labels required for each record is in the data source, >> > insert the name of that field in the last cell of the row. If it is >> > not >> > contained in the data source, have one empty cell at the end of the >> > row. >> > >> > Then you execute that merge to a new document. The new document that >> > is >> > created will contain a row of data for each record in the data source. >> > If >> > the data source did not include a field with the required number of >> > each >> > label, enter those numbers in the last column of the table in this new >> > document. >> > >> > Then with that document as the active document, run a macro that >> > contains >> > the following code: >> > >> > Dim i As Long, j As Long, k As Long, numlabels As Long >> > Dim source As Document >> > Dim stable As Table, ttable As Table >> > Dim arow As Row >> > Dim numrange As Range >> > >> > Set source = ActiveDocument >> > Set stable = source.Tables(1) >> > k = stable.Columns.Count >> > For i = stable.Rows.Count To 1 Step -1 >> > Set numrange = stable.Cell(i, k).Range >> > numrange.End = numrange.End - 1 >> > numlabels = Val(numrange.Text) >> > If numlabels > 1 Then >> > stable.Rows(i).Range.Copy >> > For j = 2 To numlabels >> > stable.Rows(i).Range.Paste >> > Next j >> > End If >> > Next i >> > >> > This will increase the number of rows of data for each record to the >> > number >> > of labels that you want. Now, you must insert a row at the top of this >> > document and enter the field names into the cells of that row. Then >> > save >> > this document and use it as the data source for creating your labels by >> > mail >> > merge. >> > >> > Please read the whole thing and do exactly as I have instructed WITHOUT >> > LEAVING OUT ANY OF THE STEPS. >> > >> > -- >> > Hope this helps. >> > >> > Please reply to the newsgroup unless you wish to avail yourself of my >> > services on a paid consulting basis. >> > >> > Doug Robbins - Word MVP >> > >> > "Denys" <Denys[ at ]discussions.microsoft.com> wrote in message >> > news:2DD5E706-ED52-4093-AF99-652117E4A25C[ at ]microsoft.com... >> > > ok, I'm using Office XP. the page has 10 row/labels. >> > > each label contains: >> > > >> > > «Next Record» «Name» «Cultivar» >> > > «CommonName» >> > > Potted on:«DateRepotted» ID#:«IDNumber» «Quantity» >> > > >> > > except for the first row where the <next record> is not there. >> > > >> > > When I executed the merge to a new document, I get several pages of >> > > labels >> > > but only one label of each, some records have 2 - 12 as quantity, but >> > > only >> > > one label is printed. >> > > >> > > I executed the macro after the new document was created, and nothing >> > > happened. >> > > >> > > Denys >> > > >> > > >> > > "Doug Robbins - Word MVP" wrote: >> > > >> > >> Tell me exactly what you did. >> > >> >> > >> Did you have the quantity field as the last field in the catalog or >> > >> directory type mail merge main document? >> > >> >> > >> When you executed that merge to a new document, what did you get? >> > >> >> > >> -- >> > >> Hope this helps. >> > >> >> > >> Please reply to the newsgroup unless you wish to avail yourself of >> > >> my >> > >> services on a paid consulting basis. >> > >> >> > >> Doug Robbins - Word MVP >> > >> >> > >> "Denys" <Denys[ at ]discussions.microsoft.com> wrote in message >> > >> news:2B97AB21-421C-4E07-8FE6-ABF1D929E827[ at ]microsoft.com... >> > >> > Hi Doug, >> > >> > I did what you said but it is not working. Maybe I need to change >> > >> > something >> > >> > in the macro language?? The field containing the number of each >> > >> > label >> > >> > is >> > >> > called: "Quantity". Not sure where to go from here. >> > >> > >> > >> > Tx >> > >> > Denys >> > >> > >> > >> > "Doug Robbins - Word MVP" wrote: >> > >> > >> > >> >> To do this, first you will need to create a catalog (or in Word >> > >> >> XP and >> > >> >> later, it is called "directory") type mailmerge in the >> > >> >> maindocument of >> > >> >> which >> > >> >> you insert a one row table into the cells of which you insert the >> > >> >> field >> > >> >> names from your data source. >> > >> >> If the number of labels required for each record is in the data >> > >> >> source, >> > >> >> insert the name of that field in the last cell of the row. If it >> > >> >> is >> > >> >> not >> > >> >> contained in the data source, have one empty cell at the end of >> > >> >> the >> > >> >> row. >> > >> >> >> > >> >> Then you execute that merge to a new document. The new document >> > >> >> that >> > >> >> is >> > >> >> created will contain a row of data for each record in the data >> > >> >> source. >> > >> >> If >> > >> >> the data source did not include a field with the required number >> > >> >> of >> > >> >> each >> > >> >> label, enter those numbers in the last column of the table in >> > >> >> this new >> > >> >> document. >> > >> >> >> > >> >> Then with that document as the active document, run a macro that >> > >> >> contains >> > >> >> the following code: >> > >> >> >> > >> >> Dim i As Long, j As Long, k As Long, numlabels As Long >> > >> >> Dim source As Document >> > >> >> Dim stable As Table, ttable As Table >> > >> >> Dim arow As Row >> > >> >> Dim numrange As Range >> > >> >> >> > >> >> Set source = ActiveDocument >> > >> >> Set stable = source.Tables(1) >> > >> >> k = stable.Columns.Count >> > >> >> For i = stable.Rows.Count To 1 Step -1 >> > >> >> Set numrange = stable.Cell(i, k).Range >> > >> >> numrange.End = numrange.End - 1 >> > >> >> numlabels = Val(numrange.Text) >> > >> >> If numlabels > 1 Then >> > >> >> stable.Rows(i).Range.Copy >> > >> >> For j = 2 To numlabels >> > >> >> stable.Rows(i).Range.Paste >> > >> >> Next j >> > >> >> End If >> > >> >> Next i >> > >> >> >> > >> >> This will increase the number of rows of data for each record to >> > >> >> the >> > >> >> number >> > >> >> of labels that you want. Now, you must insert a row at the top >> > >> >> of >> > >> >> this >> > >> >> document and enter the field names into the cells of that row. >> > >> >> Then >> > >> >> save >> > >> >> this document and use it as the data source for creating your >> > >> >> labels >> > >> >> by >> > >> >> mail >> > >> >> merge. >> > >> >> >> > >> >> -- >> > >> >> Hope this helps. >> > >> >> >> > >> >> Please reply to the newsgroup unless you wish to avail yourself >> > >> >> of my >> > >> >> services on a paid consulting basis. >> > >> >> >> > >> >> Doug Robbins - Word MVP >> > >> >> >> > >> >> "Denys" <denys[ at ]dccnet.com> wrote in message >> > >> >> news:137qnn9a22tbi72[ at ]corp.supernews.com... >> > >> >> > Thanks for helping me as I am a beginner with mail merge. >> > >> >> > I have an Access database with information regarding perennial >> > >> >> > plants. >> > >> >> > I >> > >> >> > need to print labels for each one of the plants. My problem is >> > >> >> > that >> > >> >> > I >> > >> >> > can't figure out the mail merge to print more than one label at >> > >> >> > times. >> > >> >> > let's say I have plant "A" with a quantity of 20, I want to >> > >> >> > mail >> > >> >> > merge >> > >> >> > to >> > >> >> > print 20 labels of Plant "A" as well as carrying on printing >> > >> >> > the >> > >> >> > other >> > >> >> > labels also. Is it possible? >> > >> >> > >> > >> >> > Thanks >> > >> >> > Denys >> > >> >> > >> > >> >> >> > >> >> >> > >> >> >> > >> >> > >> >> > >> >> > >> > >> >
|
|
|