Having been a classic VB6 programmer (all the way back to version 3!) myself, this is a pretty common problem. And, if you are still using VB6 (which I do occasionally also), you should try to get the habit of using Class modules and that will help you get into the OO train of thought. Without learning about OO and how it works with VB
now, you won't be a very productive person unless you stick with the old VB
, and even then you won't be able to compete with those who have learned the "new" way of VB
programming. Not trying to lecture, just giving out real world experience advice.
Alright, having said that, the scenario you describe would be a great candidate for using Crystal Reports, or any of a number of decent reporting packages. If you have VS2008, you can use Crystal Reports to make unbelievable beautiful printed reports, and in fact that is the whole purpose of the program. Check it out, if you have it, and if not, look around for other reporting software. If you have Office and Access, you could also use an Access report to do the printing part, and even hide the details from a user (who, unfortunately, will need Access or some other way to open the report.
Trust me when I say, using reporting tools is much, much easier in the long run than hand-coding a bunch of formatting instructions. I can remember doing that kind of thing back in the GWBASIC and QBASIC days, as there wasn't any other way. Now there is, and you will thank yourself for learning it.