OK found the problem. It appears that at some point one of the external references to the VBA material was rejected (ADO 2.8 Recordset). I added a link and it seems to be working fine now.
Since I somehow had 3 upvotes to answer my own question (!), I would rather put a little more if other people see this problem:
In the Visual Basic editor, under Tools β Links, I selected Microsoft ActiveX Data Objects 2.8 Library . But Microsoft ActiveX Data Objects Recordset 2.8 Library not selected. Interestingly, this library does not even appear as an option when viewing it under Windows 7, but macros work without it.
Another remark, since obviously many people have this problem ... My answer above solved the problem, but only until some people edit the file again, at which point their version of Office automatically recreates the problem, and I had to solve it again.
There are two long-term solutions:
1) You can use late binding and completely get rid of the specified library. See http://support.microsoft.com/kb/245115 for more details.
2) For my purposes, I moved the macros to another book completely - these macros should only be run from the central server (people just looking at the list will not have an ODBC data source, so the macros won anyway). So, now the first step that VBA does in the macro book is to open the real registry book, and then the rest of the VBA code remains unchanged.
asc99c
source share