Garry Robinson Gold Collection
Where do you find out about how to program Access? From books? From articles? More developers get their information from the Access Help system than any other source–if they can find what they need. Garry Robinson provides some tips for speeding up your searches, recommends a Help strategy, and suggests some new directions for the development of Access Help.
Ever since I started using Access 2003, the Help system seemed to make my life worse rather than better. But, like any good Access programmer, I just struggled on. Then, when I compiled the list of suggestions for the next version of Access (featured in the January issue of Smart Access), I realized that it wasn't just me who thought that the Access Help system had gone backward rather than forward.
So I decided that rather than just being grumpy about my lot in life, I would investigate the Access Help system. In this article, I'll discuss several different aspects of Access 2003 Help (and other Help resources) so that you can better understand how to help yourself with Access. For those of you working with earlier versions of Microsoft Access than Access 2003, some of this advice will assist you in getting more out of Help in your version of Access.
Describing Access Help is made more interesting because it's a moving target. For instance, it's important to understand that, beginning with Access 2000, Microsoft has divided the Access Help into two dissociated parts. One part is the Access product Help that appears whenever you access Help about anything that isn't in the Access VBA Integrated Development Environment (IDE). Generally this Help is littered with pages that aren't useful to developers at any skill level.
As a Smart Access reader, you're probably most interested retrieving programming information. If you're contemplating finding any programming information, you need to switch to the VBA IDE before entering your search phrases (the hot keys to move quickly to the VBA IDE Help are Alt+F11 or Ctrl+G). Only when searching Help from the VBA IDE can you find programming Help.
For those of you who yearn for the good old days of Access 97 Help, you'll be pleased to know that when you get to the Access 2003 IDE Help, that Help now includes the material about DAO that was conspicuously absent from Help in Access 2000 and 2002. In a perfect example of the lack of work done with Access 2003 Help, the table of contents for Access 2003 DAO 3.6 includes a "What's New" section that highlights great things about DAO 3.5–a product that was superseded many years ago. When looking at Access DAO, by the way, be sure that you distinguish between ADO and DAO examples. The examples in Access 2003 omit the object name in front of the references to DAO objects. Since some object names are common between the ADO and DAO object models (most noticeably, the Recordset object), it's possible to confuse sample DAO code for ADO code.
Another version-related change is the missing Index tab, whose loss is a major blow to my ability (at least) to use Access Help. At one point, it was suggested that using the Index could improve your productivity with Help by up to 20 percent. While the latest versions of Access simply remove the Index tab, the Index remains in other products, like Visual Studio.
On the positive side, though, another version-related change is the inclusion of the Access training sessions that you'll find as you search the Access 2003 online Help. While these sessions aren't for everyone, you may find it worthwhile to sit back and listen to a talk on a particular Access topic for free. While this innovation is new to Access 2003, it's available to users of all versions of Access through the Microsoft Web site.
Turn off online Help
Discussing online resources brings me to the principal design difference between Access 2003 and previous versions: Access 2003 offers the "Office Online" extension to the Help system. What happens with "Office Online" is that Access opens an online search that redirects the search away from the Help files on your computer and, instead, sends them to Microsoft.com. If you want Access Help to perform as quickly as it did in Access 2000 or Access 2002, then consider using this "feature" carefully. The Access 2003 online search engine will increase the number of topics returned that are related to your search and take longer than searching the files on your hard disk.
If you haven't thought about the implications of this feature, pick a set of terms to test with and compare searching with "Office Online" with searching through the local copy of the Help files.
To perform this test, you need to be able to restrict your search to just local resources by turning off the online search. Here's the first of three ways to do this:
1. Press F1 to bring up the Help task pane.
2. Click on the Online Contact Settings at the bottom of the task pane.
3. In the dialog that opens, uncheck the "Show contents and links from Microsoft Office Online" option.
4. Restart Access.
If you've already entered a search term, you can turn off online searches from the resulting topic list. At the bottom of the Help results there's a drop-down list that allows you to select to search only Offline Help (see Figure 1). Yet another way to turn off online Help is through the Tools | Options | General | Service Options | Online Content menu choice.
I don't want to predict what your feelings will be as a result of this test. However, my experience has been that the additional results that I get from Office Online are more likely to confuse me than help me (and take longer, to boot). If you're using a dial-up modem, Office Online can be really wasteful as it can unexpectedly kick in whenever you're connected.
The result of leaving online Help turned on is a set of "Access Related" topic titles, found on the Microsoft site, that are relevant to your search terms. Because you've retrieved the files from the Microsoft site, when you click on a topic in the Access 2003 search pane, you're directed to a page on the Microsoft Web site. Unfortunately, because all the topics from a Help search are displayed the same way in the HTML Help window, you can't tell the difference between local links and online links. Not that it matters, except for the longer retrieval time: Often selecting the online link is just a slower way to look at what's likely to be exactly the same information as is residing on your computer.
In addition to making it impossible to determine whether a link is local or online, the topic list also fails to provide any context information for the online topics that are found. Because the topics are listed sequentially, rather than organized into topic folders, you don't get any of the benefits of having a navigation framework that would let you see other, related pages on the Microsoft site.
Getting back to Help
This lack of context is one of the reasons I believe that the Access Help isn't useful anymore. I suspect that, in an effort to integrate the Access Help with the Task Pane and online searches, the Microsoft team sacrificed integration with the Help Table of Contents (TOC). Fortunately, you can return to the previous style of Help, with a TOC that provides context, by opening the Help files directly and staying offline. To open the files directly, find the CHM files listed in Table 1 (they should be in your Access 2003 Program Files folder in a subdirectory called 1033–for example, C:\Program Files\Microsoft Office\Office 11\1033). Once you find them, just double-click on the files to open them (you might want to consider setting up a shortcut on your desktop so that the files will always be readily available).
Table 1. The Access 2003 Help files.
This is the main Access Help file.
This is the Access VBA Help.
This is the Microsoft Graph Help.
Once you open one of the files (see Figure 2), you'll see a Help interface that includes the TOC down the left-hand side. Usually the TOC will synchronize with the page that you're currently viewing. If you can't see the TOC, click on the book button with the arrow on it at the top left of the Help window and the TOC will display.
If you think you'd like to take advantage of the Access online resources but don't want to turn on the Access online Help, start up your browser and head to http://support.microsoft.com. Once you're there, click on the "Select a Product" link in the menu bar at the top of the page. On the resulting page, choose the Microsoft Office Access 2003 link. Bookmark this page so that you can quickly return to it in your browser when the local Help system doesn't help you. The most useful tool on this page is the Search Support (KB) Microsoft Office Access 2003 textbox on the right-hand side.
With the shortcuts on your desktop and the Microsoft site bookmarked in your Web browser, you can take advantage of the best of local and online resources when you want (at the cost of losing F1 key integration).
By the way, I do think that there's at least one way that an online connection for Microsoft Help could be useful, assuming that privacy issues could be resolved. The Internet could be used to implement a system for collecting which Help topics are viewed (and for how long) across a large numbers of users. This information could then be used by the Help system when ranking topics in searches. Presumably, the topics that most people find useful in any list would bubble to the top of the list.
Because Help doesn't give you much help in using Help, you'll need to develop a strategy for using Help. The first thing to do is recognize that, when you don't know a lot about a topic and searching both Access Help and the Internet is leading you down a lot of blind alleys, you should just stop: Take a breather!
Rather than keep banging your head against the wall, a better approach is to pull out a book or a relevant issue of Smart Access and do some background reading on the topic. If you're going to be ready to pull out a book, you'll need to have two or three different books at your level that you can simply pull off your shelf to help you get started with a topic. When it's all said and done, three books at $40 each isn't a lot of money, even if you only read three chapters from each book (is it worth $120 to you to cut hours off your search time over the next year?). The benefit of reading a book chapter (or two) is that you'll now be armed with search terms that are far more specific and that you can use either when searching local Help or with an Internet search engine.
Now that you know what you're looking for, you need to decide when to use Access Help and when to use the Internet–and what parts of the Internet. For instance, one of the things that Access Help isn't very good at is telling you what to do when an error occurs. To search effectively, you need both the error number and the exact text of the error message (if the error has occurred to a user, it can often be difficult to get the exact text of the error message from the user). Once you have both the error and text, you can use this information to search the Internet using Google (or the search tool of your choice). What makes Google particularly adept at helping out with error messages is that you can quickly switch to the Google Groups view–even if no official site references the error, another developer may have had the problem and posted the issue to a newsgroup.
When using Google Groups, you can get a smaller list by taking advantage of the Advanced Groups Search option. Among other features, this allows you to limit your searches to the comp.database.ms-access and microsoft.public.access newsgroups. When searching Google Groups, remember that you're most interested in threads with at least two items (threads with a single item probably just have the question with no answer).
However, Access Help and the Internet are just the two most obvious resources. If you've missed the terrific battle that's taking place in desktop searching tools, I highly recommend that you arm yourself with a desktop searching tool so that you can become a more proficient knowledge-based warrior. Desktop searching tools that have been getting good reviews (and can be downloaded for free) include products from Copernic, Google, and Microsoft. Copernic is the tool that's been around the longest–both Google and Microsoft's tools are in beta mode at the time of this writing. These tools can combine searching the Internet with searching local resources on your computer. For instance, if you're receiving a newsletter with Access content, a desktop search tool will find that material in your e-mails and give you valuable gateways to the material on the Internet that best suits your Access searches. These tools will also let you save Web pages and other resources that you come across into a "knowledge folder" on your desktop.
Could Help be better? Here's my manifesto for how Help could be made a more valuable resource for the professional developer (that would be you). These changes would have the benefit of making Help more usable for the novice user also.
As users of Help, we're after an answer–not a huge list of possible pages that don't seem to be ranked very well. There are far too many topics returned from the Access Help, and they rarely seem to reflect the answer that you're expecting, at least not in the first few results.
We need a list that reflects the person asking the question. For developers like us, we want answers from both the VBA Help and the normal Access Help: We don't want silly boundaries between different parts of the product. This issue actually goes beyond our needs as developers: When beginners are using Help, they don't need (or want) to see lots of Help on advanced topics (such as Pivot tables and XML exports) unless they explicitly ask for those topics. At the very least, if those topics are being included in the list, they shouldn't be at the top. Beginners want the basic tools and the explanations that describe how to use them.
A valuable extension to Help would allow users to describe themselves to Help. At the very least, it would be useful to let users enter their level of expertise (perhaps beginner, moderate Access developer, or Access professional) and have Help use that information to rank the topics returned. The major effort in this extension is assigning all of the existing topics to categories that are relevant to the user descriptions.
Help returns better results when the search terms are spelled correctly. Why doesn't Help check spelling, especially for Office products that presumably have access to the Word spell checker? This would be particularly useful to developers if the Help dictionary included VBA and Access keywords. Google provides a model for the way this feature can be incorporated into a user interface–in Google, with a single click, a user can run a new search with correctly spelled terms.
Indeed, the Web provides a number of useful user interface features that Help would benefit from including. For instance, why not show the pages that you've already visited recently in a different color? This change would address two scenarios that I frequently encounter. For instance, I'm frequently frustrated by clicking on what appears to be a useful topic and discovering that I've just bumped into a page that I've already read. The reverse scenario is also often true: Sometimes I'm trying to find my way back to a topic that I visited earlier.
As I noted, the Index tab has been removed from Help. One of the frequent complaints about the Index was that it included references to topics that were part of a completely different technology than the user was interested in. To put it bluntly: If you're not using Access Data Projects, you shouldn't have to wade through Access Data Project topics. The filtering system in Visual Studio (and the more advanced filtering system in the betas of Visual Studio 2005) provides a model for how this could be handled.
Simply consolidating the number of pages in Access Help would help. While it's terrific that a page is small and easy to read, this has led to a very large resource with an awful lot of pages that say a whole lot about nothing. For one, simply including the examples on the same page as the content would reduce the number of pages by 30 percent. This may result in some redundancy in the published pages (that is, examples that are shared by several topics would now be repeated in each topic). However, this redundancy is only apparent: I assume that Access Help is generated from some database of Help topics where the examples would only be stored once.
Help is important to everyone who uses Access. So important that it should be treated with the same care and attention as any other feature in Access. So, beloved Microsoft Development Team, please put lots of good Research and Development into Help design. When you think that you've come up with a better Help system, issue the new system in its own set of beta releases so that the people who care the most have a chance to provide you with feedback. It's time that the Help development system got the attention (and credit) that it deserves.
Sidebar: Useful Further Reading and Resources
• Microsoft released a new version of the VBA Help for Access 2003 (VBAAC10.CHM) in late 2004. It can be downloaded from the following location and will replace the Help file that you have now: http://msdn.microsoft.com/office/downloads/vba.
• Using Microsoft Help in your own solutions: www.microsoft.com/resources/documentation/office/2000/all/solution/en-us/part2/ch13.mspx
• Woody's Office Watch had a good series on Desktop Searching in late 2004: www.woodyswatch.com/office/archives.asp
Other Pages That You Might Like