Instead of using the linked cell as the output, hard code the first output address into the combo box change event, and use a counter to add an offset to the base address, then increment the counter after each selection.
The following is the code for the Combo box change event, with a variable (counter).
Dim intCounter As Integer
Private Sub ComboBox1_Change()
Dim rngOutput As Range
'base location for output
Set rngOutput = ActiveSheet.Range("D20")
'add a row offset to the base address, and save the new value
rngOutput.Offset(intCounter, 0).Value = ComboBox1.Value
'increment the counter or reset it to 0
If intCounter = 14 Then
intCounter = 0
intCounter = intCounter + 1
Note that the counter is declared outside the combo box change event, so that it is not reset to zero everytime the combo box change event is fired.
It sounds as though this project would be more manageable if you used a form
The form could then control the creation and naming of the output (?invoice) document, add a date or dates to the document, control printing and save & clear up when done. You could include a correction option, so that if a wrong selection was made from the combo box it could be corrected. A spin button would allow the user to go back to any of the 15 lines and replace it with a corrected item. You could also include a 'prepared by' combo box and 'prepared on' clickable calendar.
The combo box is no longer embedded in the worksheet, but is part of an independant form, called up from a button on a toolbar.