I use A2002 and did not even know that there was an "Object Dependency" window (2003 feature), so I do not know about using it. But I think you could easily make a tabular report doing some queries on the System tables. I was able to get a lot by just some short playing around. I did it as a bunch of small queries which you could dump into a report using subreports:
1) get the tables qryTables:
SELECT MSysObjects.Id, MSysObjects.Name, MSysObjects.ParentId, MSysObjects.Type
FROM MSysObjects
WHERE (((MSysObjects.Name) Not Like "MSys*") AND ((MSysObjects.ParentId)=251658241) AND ((MSysObjects.Type)=1))
ORDER BY MSysObjects.Name;
2) get the forms qryForms
SELECT MSysObjects.Id, MSysObjects.Name, MSysObjects.ParentId, MSysObjects.Type
FROM MSysObjects
WHERE (((MSysObjects.Type)=-32768))
ORDER BY MSysObjects.Name;
3) get the Modules qryModules
SELECT MSysObjects.Id, MSysObjects.Name, MSysObjects.ParentId, MSysObjects.Type
FROM MSysObjects
WHERE (((MSysObjects.Type)=-32761))
ORDER BY MSysObjects.Name;
etc.
4) Defined queries not queries on a form, report, or control qryQueries
SELECT MSysObjects.Id, MSysObjects.Name, MSysObjects.ParentId, MSysObjects.Type
FROM MSysObjects
WHERE (((MSysObjects.Name) Not Like "~Sq*") AND ((MSysObjects.ParentId)=251658241) AND ((MSysObjects.Type)=5))
ORDER BY MSysObjects.Name;
5) Queries on a form qryFormQueries:
SELECT MSysObjects.Id, MSysObjects.Name, MSysObjects.ParentId, MSysObjects.Type, MSysObjects.Database
FROM MSysObjects
WHERE (((MSysObjects.Name) Like "~sq_f*") AND ((MSysObjects.ParentId)=251658241) AND ((MSysObjects.Type)=5))
ORDER BY MSysObjects.Name;
You got the idea? Do the same stuff for forms and relationships
So lets say I want to see all the defined queries related to a table grouped by table:
6)SELECT MSysQueries.Name1, qryQueries.Name
FROM qryQueries INNER JOIN MSysQueries ON qryQueries.Id = MSysQueries.ObjectId
GROUP BY MSysQueries.Name1, qryQueries.Name
HAVING ((Not (MSysQueries.Name1) Is Null And (MSysQueries.Name1) Not Like "MSys*"))
ORDER BY MSysQueries.Name1, qryQueries.Name;
7)All form queries related to a Form qryForm_Queries
SELECT qryForms.Name, qryFormQueries.Name, qryFormQueries.Id
FROM qryFormQueries, qryForms
WHERE (((InStr([qryFormQueries].[Name],[qryForms].[Name]))<>0));
8) All tables and forms grouped by table
SELECT MSysQueries.Name1, qryForm_Queries.qryForms.Name, qryForm_Queries.qryFormQueries.Name
FROM qryForm_Queries INNER JOIN MSysQueries ON qryForm_Queries.Id = MSysQueries.ObjectId
WHERE ((Not (MSysQueries.Name1) Is Null));
This is a general idea of how I would do it.
Like Michael said this will not get "All", but enough of the high level information, especially queries based on queries.
You can also do some vba using the "currentproject" object and the related collections (allForms,allmodules..allreports).