How to reference same cell from multiple worksheets in Excel?
Supposing you have a workbook which contains multiple worksheets, and now you want to extract the data within the same cell across multiple worksheets into one master worksheet. For example, pull cell B8 from Sheet1, Sheet2, Sheet3, Sheet4… into a master sheet as following screenshot shown. How could you solve this task quickly and easily in Excel?
If your worksheet names are default sheet names, such as Sheet1, Sheet2, Sheet3...,you can use a formula to deal with this job quickly in Excel.
1. First, you should create a list of helper numbers, please enter 1, 2, 3, 4... sequence numbers which indicate the worksheets you need to reference, see screenshot:
2. Then, enter the below formula into the cell where you want to extract the data, and then drag the fill handle down to the cells you want to appy this formula, and all the same cell value from multiple worksheets have been extracted, see screenshot:
Note: In the above formula, E2 is the helper number that you entered in step 1, and B8 is the cell reference that you want to extract. This formula is only works well if the sheet names are Sheet1, Sheet2, Sheet3...
If there are dozens of worksheets which sheet names are various contents instead of the Sheet1, sheet2, in this case, the following VBA code can help you fill the same cell references from multiple worksheets into one worksheet at once.
1. In the Master worksheet, click cell B8 which is the cell you want to extract from other worksheets.
2. Hold down the ALT + F11 keys, and it opens the Microsoft Visual Basic for Applications window.
3. Click Insert > Module, and paste the following code in the Module Window.
VBA code: reference same cell from multiple worksheets
Sub AutoFillSheetNames() 'Update by Extendoffice Dim ActRng As Range Dim ActWsName As String Dim ActAddress As String Dim Ws As Worksheet On Error Resume Next xTitleId = "KutoolsforExcel" Set ActRng = Application.ActiveCell ActWsName = Application.ActiveSheet.Name ActAddress = ActRng.Address(False, False) Application.ScreenUpdating = False xIndex = 0 For Each Ws In Application.Worksheets If Ws.Name <> ActWsName Then ActRng.Offset(xIndex, 0).Value = "='" & Ws.Name & "'!" & ActAddress xIndex = xIndex + 1 End If Next Application.ScreenUpdating = True End Sub
4. Then press F5 key to run this code, and all values of cell B8 from other worksheets have been pulled into the Master worksheet. See screenshot:
Note: This VBA code is applied for filling the cells where you click. For example, if you click cell A1 in a specified worksheet, all the values of cell A1 from other worksheets will be filled into this worksheet.
If you are not familiar with the VBA code, here, I can introduce you a useful tool - Kutools for Excel, with its Dynamically Refer to Worksheets utility, you can fill cell references from multiple worksheets in Excel with ease.
After installing Kutools for Excel, please do as this:
1. Click cell B8 within the Master sheet which you want to extract from other worksheets.
2. Then click Kutools > More > Dynamically Refer to Worksheets, see screenshot:
3. In the Fill Worksheets References dialog box, choose Fill vertically cell after cell from the Fill order, and click the little lock beside the formula text box, and the grey lock will become yellow lock, it means the formula and cell reference has been locked, then you can click any a cell to extract the cell B8 references from other worksheets, in this example I will click cell B2. Then, check the worksheets which you want to extract the cell references from. See screenshot:
Note: If you don’t lock this little lock, the cell reference you are clicked will be changed with the selected cell.
4. Then click Fill Range button, and the cell values of cell B8 from other worksheets have been listed vertically in the Master worksheet, and then close this dialog box. See screenshot:
- Copy Rows From Multiple Worksheets Based On Criteria Into A New Sheet
- Supposing, you have a workbook with three worksheets which have the same formatting as below screenshot shown. Now, you want to copy all the rows from these worksheets which column C contain the text “Completed” into a new worksheet. How could you solve this problem quickly and easily without copying and pasting them one by one manually?
- Create A List Of Unique Values From Multiple Worksheets
- Is there any quick way for us to create a list of unique values from all worksheets within a workbook? For example, I have four worksheets which list some names contain duplicates in column A, and now, I want to extract all unique names from these sheets in to a new list, how could I finish this job in Excel?
- Countif A Specific Value Across Multiple Worksheets
- Supposing, I have multiple worksheets which contains following data, and now, I want to get the number of occurrence of a specific value “Excel” from theses worksheets. How could I count a specific values across multiple worksheet?
- Insert The Same Image Into Multiple Worksheets
- Normally, we can insert a picture into a worksheet quickly by using the Insert function in Excel, but, have ever tried to insert the same picture into all worksheets of your workbook? This article, I will introduce a useful method for you to solve this job.
- Run The Same Macro On Multiple Worksheets At Same Time In Excel
- Normally, we can run a macro in a worksheet, if there are multiple sheets need to apply this same macro, you should trigger the code one by one sheet. If there any other quick way to run the same macro on multiple worksheets at once in Excel?
You are guest ( Sign Up? )
or post as a guest, but your post won't be published automatically.
- To post as a guest, your comment is unpublished.· 2 years agoI have create a stock sheet and opening stock list is there and i create 500 sheets for different items so how to put opening stock in all sheets at a time
- To post as a guest, your comment is unpublished.· 3 years agoHello,
I have a list of students in column A and the schools they attend in G. I want a worksheet to populate all students who attend X school from the available worksheets. How would I do this? Thanks in advance!
- To post as a guest, your comment is unpublished.· 3 years agoI have a spreadsheet with all the months. I want some of the cells to carry over from the first month to the proceeding other (i.e., cell B12 in January can be linked to February - December cell B12).
How would I do this?
- To post as a guest, your comment is unpublished.· 3 years agoHi, thanks it works with a workbook at my job. Thanks
- To post as a guest, your comment is unpublished.· 3 years agoDears,
Kindly note that I used Reference Same Cell From Multiple Worksheets With VBA Code and it works with me properly, however I need your help in how to me this code retrieve the values in the master sheet horizontal instead of vertical.
Best Regards, :-)
- To post as a guest, your comment is unpublished.· 3 years agoDears
Kindly note that I used Reference Same Cell From Multiple Worksheets With VBA Code and it works properly, but I need to modify something in the code and I need your help to make the values return in the master sheet horizontal instead of vertical.
- To post as a guest, your comment is unpublished.· 3 years agoIs there a MAcbook version of this tool?
- To post as a guest, your comment is unpublished.· 3 years agoHi
I have just tried your vba code and it makes sense how to use it however on my master spreadsheet for this to work it is slightly more complicated
firstly i'd want when i run the code for the results to populate horizontally
secondly the cell id use as a reference like B6 is used doesnt correpsond on the other spreadsheets - so to explain the value id want to find appears in the same cell on each sheet but this doesnt correspond onto the master spreadsheet
hope this makes sense
- To post as a guest, your comment is unpublished.· 4 years agohi
Thank you for you coding its really great and so much helpful for us.
In this above VBA code how can I exclude the hidden worksheet? As I have different customer whom I billed them monthly using a format. So I have created few worksheet and hide them and from where I extract the different data from this hidden sheet.
So please let me know the coding so that it doesn't pick the cell value from hidden worksheet.
Your work is highly appreciated and thak you for your wonderful support!
- To post as a guest, your comment is unpublished.· 4 years agoHow would I reference a specific cell as opposed to the cell that I have selected in another workbook?
- To post as a guest, your comment is unpublished.· 5 years agoYou missed single quotes in line 16 of the VBA code.
This code is correct:
Dim ActRng As Range
Dim ActWsName As String
Dim ActAddress As String
Dim Ws As Worksheet
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set ActRng = Application.ActiveCell
ActWsName = Application.ActiveSheet.Name
ActAddress = ActRng.Address(False, False)
Application.ScreenUpdating = False
xIndex = 0
For Each Ws In Application.Worksheets
If Ws.Name ActWsName Then
ActRng.Offset(xIndex, 0).Value = "='" & Ws.Name & "'!" & ActAddress
xIndex = xIndex + 1
Application.ScreenUpdating = True
- To post as a guest, your comment is unpublished.· 6 years agoANd what if I want to specify the cell not clicking on it but writing it? how would the code change?
- To post as a guest, your comment is unpublished.· 6 years agothanks a lot it's very useful :roll: