One feature in Outlook that divides and unites people is the calendar printing feature set. It seems that if you ask 1000 people what they need from a calendar printout, you will get 999 different answers. Some people rely on word wrapping a certain way, others want more flexibility in paper sizes, others want more/better formatting of the appointment text, etc etc. We actually have a companion product, the Calendar Printing Assistant for Outlook or CPAO for short, which produces even more printout options. Yet, even with the CPAO there are just some things you can't get in your printouts. This blog entry is a reminder of an age old way to get "exactly" what you want if you have some intermediate scripting skills and a little patience.
I will be posting the detailed step by step on how to use this method, but for now, here is a summary.
1. We use Word for Windows as the "formatting engine". Word has tables and styles and colors and shading and practically any kind of formatting you can imagine. So if you want your appts to be in a crazy font, or a different color, or animated with ants crawling around the letters, then Word provides that. Not only do we have a gigantic set of formatting choices, but we have features that make it easy to LAYOUT the calendar. Tables can be inserted to look like months or weeks. Bookmarks can be used to mark places to insert our data, and autotext entries can make boilerplate information a snap.
2. We use macros from Word to automate Outlook and get the calendar data. The outlook object model provides a rich set of methods to get the data we want. We can restrict by dates, include or not include recurring data, get the tasks data as well, etc.
3. Figure out how to best put things together. To run macros, you have to apply some level of trust to things these days. That means either signing the word macros, or lowering the macro secruity or something that will let the code run and get the work done.
So that will be out topic. Hopefully I will have the first part ready in a day or so...