Please Note: This article is written for users of the following Microsoft Excel versions: 97, 2000, 2002, and 2003. If you are using a later version (Excel 2007 or later), this tip may not work for you. For a version of this tip written specifically for later versions of Excel, click here: Discovering Dependent Workbooks.
Written by Allen Wyatt (last updated January 21, 2023)
This tip applies to Excel 97, 2000, 2002, and 2003
Beth wonders if there is a way that she can determine if there are other workbooks dependent on the workbook she has open. She know how to find the precedent links to her open workbook but not the dependent ones. Beth is in a new job and she doesn't want to risk editing a workbook without knowing what other files she may be impacting.
If you have workbook A and workbook B, and workbook B includes a link to workbook A, then workbook B is dependent on workbook A and workbook A is a precedent to workbook B.
In workbook B you can easily find out the links used in the workbook; you would know that workbook A is a precedent to workbook B. As Beth said, she knows how to find out this information.
In workbook A there is no way to determine that workbook B has a link to workbook A and is therefore dependent on workbook A. Thus, it is possible to make changes to workbook A that can, inadvertently, affect workbook B. For instance, you could change a named range or rename a worksheet or delete information you think is no longer needed. When you next open up workbook B, you would be in for a rude surprise because the information that it depended on in workbook A was no longer available.
Some changes you make in workbook A may not affect workbook B. For instance, you should be able to add worksheets, add named ranges, and possibly insert columns or rows. In all these cases Excel may adjust naturally to the changes without affecting workbook B. Problem is, you won't know if there's been a negative effect until you later open workbook B. And you wouldn't even know to open workbook B unless you knew beforehand that there was a relationship between the two workbooks.
One way around the problem is to open all the workbooks you can think of, at the same time, and then use the auditing tools in Excel to check for dependencies. This can work nicely if you have a very limited number of workbooks on your system. It doesn't work that great if you have a lot of workbooks or if the workbooks are on a network.
If you have your workbooks in a set location on your local system (all in a single folder), then you might try using a macro to determine the dependencies. The following steps through all the Excel workbooks in a given directory and identifies workbooks linked to your currently open workbook by formulas.
Sub DiscoverDependentFiles() Dim i As Integer Dim iFile As String Dim fLink As Variant Dim sLink As String Dim myFldr As String Dim curFile As String 'Change the string here to look 'for a different link / file name sLink = "[FileA.xls]" curFile = ThisWorkbook.Name 'Change the string here to look 'in a different folder myFldr = "C:\Users\User\mySub\" iFile = Dir(myFldr & "*.xls", vbNormal) i = 1 'Loop through all of the files in the folder Do While iFile <> "" If iFile <> curFile Then Workbooks.Open Filename:=myFldr & iFile Set fLink = Cells.Find(What:=sLink, _ After:=ActiveCell, LookIn:=xlFormulas, _ LookAt:=xlPart, SearchOrder:=xlByRows, _ SearchDirection:=xlNext, MatchCase:= _ False, SearchFormat:=False) If UCase(TypeName(fLink)) <> UCase("Nothing") Then Windows(curFile).Activate 'Record names of dependent files 'in your open workbook Worksheets(1).Range("D" & (i)).Value = _ ActiveWorkbook.Name i = i + 1 End If Workbooks(iFile).Close False End If iFile = Dir Loop End Sub
This approach should work fine in simple situations. In some cases, however, such a macro could provide only a partial solution, because links can be hidden in numerous places—in Excel names, text boxes, charts, and other objects. There is always a chance that something can be left unchecked. The upshot of this is that because your changes could affect other workbooks that are dependent on the one you are changing, you may want to make a backup of the workbook file before making changes.
ExcelTips is your source for cost-effective Microsoft Excel training. This tip (7797) applies to Microsoft Excel 97, 2000, 2002, and 2003. You can find a version of this tip for the ribbon interface of Excel (Excel 2007 and later) here: Discovering Dependent Workbooks.
Create Custom Apps with VBA! Discover how to extend the capabilities of Office 2013 (Word, Excel, PowerPoint, Outlook, and Access) with VBA programming, using it for writing macros, automating Office applications, and creating custom applications. Check out Mastering VBA for Office 2013 today!
Excel provides some great tools that can help you see the relationships between the formulas in your worksheets. These ...Discover More
Cells that affect another cell are called precedent cells. If you need to know which cells affect a particular cell, ...Discover More
Cells that use the information in a particular cell are called dependent cells. Excel provides auditing tools that allow ...Discover More
FREE SERVICE: Get tips like this every week in ExcelTips, a free productivity newsletter. Enter your address and click "Subscribe."
Got a version of Excel that uses the menu interface (Excel 97, Excel 2000, Excel 2002, or Excel 2003)? This site is for you! If you use a later version of Excel, visit our ExcelTips site focusing on the ribbon interface.