I was wondering if anyone knew what to add to my code so that if the user selects "cancel" instead of "print", he returns to the listbox(that's where the print items are located) with the items as they were before the print job. I think it has something to do with vbCancel, but I can't find it anywhere in my book. Thank you very much.

Private Sub mnuPrint_Click()
Dim Item As Integer

cdlPrint.ShowPrinter
Printer.NewPage

' Prints the contents of the lstShopping list box.

For Item = 0 To lstShopping.ListCount - 1
Printer.Print lstShopping.List(Item)
Next

Printer.EndDoc

Archie Kantzavelos