Using Schedules, you can usually use Highlight in Model to find an element (or group of elements) from a schedule row.

However, this does not work if the element is hidden in the only view that it is instantiated in – for example, a single Generic Annotation entry in a Note Block (Schedule).  Revit will not be able to find the element.

One workaround – interestingly, selecting a Schedule row actually selects the object/s in Revit, but at least in my configuration (Properties Palette on second monitor), it does not show the Properties in the Palette for that object while the Schedule view is active.  However, you can:

  1. Select the schedule row
  2. Switch to another view (for example, a 3D view)
  3. The Properties Palette has now updated to show the properties for the Element!
  4. You can trigger normal commands – such as IDs of Selection or Save Selection

Another workaround:

  1. Install RevitLookup
  2. Select the row in the Schedule
  3. Revitlookup – Snoop Current Selection… (this will give you Element ID and other info)

Some cool ideas from the June 2011 issue of AUGIWorld, article entitled ‘Revit, in a Database’ by Paul Crickard:

Once a Revit model has been exported to a database, the things
that can now be done with it are limited only by your imagination.
Build web-based or stand-alone front ends to access and modify
your model—without knowledge of the Revit API. Bring existing
data into a database and join it with the Revit model.

In this article he discusses some of the potential connections between MS Access and MS Excel, and the benefits of such interoperability.

I have posted numerous times about how to view the Revit database using various methods.  To start with, perhaps you would be interested in this post:
What Revit Wants: HOW-TO View the Revit Database (2011 Secret #14)

And, yeah, I twisted the title of this post a little bit 🙂

As a follow up to my previous post (Exposing the Revit Database), I will now explain how to install and use the RvtMgdDbg add-in for Revit, which allows you to “Snoop” the Revit database.
What does RvtMgdDbg really stand for? ‘Rvt stands for Revit, Mgd for Managed, and Dbg for Debug.’

It is most commonly used by programmers in the Revit API. You may find it useful, however, in just understanding the structure of the database. You can also use it to find information that otherwise may be very difficult to obtain.

How do you get this RvtMgdDbg, and how do you make it work?

It’s not too difficult:

  1. Download the RevitAPI_2010_Webcast.zip file (I got this link from The Building Coder) (or if you are part of the ADN, download from 2010 alpha version).
  2. Extract the RevitAPI_2010_Webcast.zip file.
  3. Go in to the RvtMgdDbg_0504 2009 subfolder. Then, double click the RvtMgdDbg2008.sln file.
  4. If your PC is set up correctly, Microsoft Visual Studio Tools for Applications 2.0 should open up.
  5. Now, just click on the ‘Build’ menu, and then click ‘Build RvtMgdDbg2008’.
  6. If all goes well, you can now close Microsoft Visual Studio Tools for Applications 2.0.
  7. Go to the RvtMgdDbg_0504 2009bin folder. RvtMgdDbg.dll should be present in this folder.
  8. There are a few different ways to do the next couple of steps. I’ll just describe one simple way…
  9. Go to your C: drive and make a folder called RVTMGDDBG.
  10. Copy the RvtMgdDbg.dll file into the C:RVTMGDDBG folder.
  11. In your Revit program folder (usually C:Program FilesAutodesk Revit Architecture 2010Program), open the file Revit.ini
  12. Scroll down until you see the [ExternalApplications] subcategory.
  13. Check the EACount= value
  14. Change the EACount= value by increasing it by 1 (eg. if 2, change it to 3)
  15. After the final EAAssembly line (eg. EAAssembly1 or EAAssembly2 etc), add the following lines (you need to replace the question mark with your EACount= value PLUS 1):

EAClassName?=RvtMgdDbg.App
EAAssembly?=C:RVTMGDDBGRvtMgdDbg.dllThere you go! Close and save the Revit.ini file.Now, to try it out…

  1. Open Revit.
  2. Make a new project.
  3. Make a bit of wall.
  4. Select the wall you just made.
  5. In the Ribbon, go to the ‘Add-Ins’ tab.
  6. Click Snoop Current Selection… button on the RvtMgdDbg panel.
  7. A window should come up showing you the properties of the wall you made.

Or, to browse most of the Revit database at once:

  1. On the RvtMgdDbg panel, click Snoop Db…
  2. The window should look something like this:


You can now browse around and learn how the database is put together.Keep in mind that there may be issues and bugs with this method. For instance, on one version of RvtMgdDbg that I was using, it seemed to cause Revit to prompt me to Save Coordinates (on a project with linked Revit models using shared coordinates) – even though I had not moved the linked models.So, be careful! You might want to use this on ‘test’ projects to start with. If you want to remove this add-in, simply reverse steps 15 and 14 in the first list (remove the lines you added to Revit.ini and reduce the EACount= value by 1).Feel free to comment or contact me if you have any problems or questions related to the above method.If you are really interested in the Revit API, head over to http://usa.autodesk.com/adsk/servlet/index?siteID=123112&id=2484975 and check out some of the material on that page.