Excel, use file path to reference cell values in another workbook - excel

I have a series of daily spreadsheets which are file by:
year / month / date
e.g.
/Users/myles/Dropbox (Green)/05_GM Vessels/Crew Dropbox/Green Isle/02_Daily Logs/2019 Logs/[GI_Daily_Log_30.07.2019.xlsx]Sheet1'!$B$44
I would like to use a formula to extract the value within the specified cell (B44 in this case) and show it in a master / summary spreadsheet.
The files are in a different directory to the master / summary spreadsheet.
I have a formula which generates the above file path based on values in other cells. E.G. ="["&$D$14&$W5&"/"&$A5&"]Sheet1'!$C$24"
Which creates the following text within a cell;
[/Users/mylesmetson/Dropbox (Green Marine)/05_GM Vessels/Crew Dropbox/Green Isle/02_Daily Logs/2019 Logs/7_July/[GI_Daily_Log_29.07.2019.xlsm]Sheet1'!$C$24
Ideally I would like to remove the first / and then insert " =' " which if pasted as text into a cell, would then extract the value from this spreadsheet file and the referenced cell. But this does not work. instead I am having to do this manually in notepad and then copy & paste the entire text back into the cell.
Finally prior to excel retrieving the number in the referenced cell, I have to give permission / find the file location.
This is quite a complicated thing to explain and I have not found any other solutions on the internet which are 100% relevant to this scenario. I think a macro may be required, but hopefully this can be done elsewise.
The indirect macro, would be ideal, apart from it requires the spreadsheets to be open, which is simply not practical either.
Thanks
for any help which can be provided.
Myles

Related

Excel 2010 VBA: Using Relative references across multiple workbooks

I'm attempting to design a macro to simplify the update process for my company's order tracking, and I'm struggling with relative references. I'm using Excel 2010.
what I need the macro to do: Find a given part number on one workbook, and use the row number of to update formulas in a a second workbook.
In more detail:
Where |Y|= column letter of original spreadsheet, |X|= row number of original spreadsheet, and |X^|=Row number of ‘All Inventory.xls’
There are 4 separate spreadsheets I would need to run the macro from (It’d be a lot easier if I could have the 4 as separate pages on one spreadsheet, but unfortunately, my boss is 60 and is a bit fuzzy on how excel works.)
The spreadsheet ‘All Inventory.xls’ is not in table form, and I can’t convert it to one. (the guy who runs inventory is very fuzzy on how spreadsheets work, approximately five years from retirement, and about as friendly as a snapping turtle.)
When run from cell |Y||X| in a table:
Copy content of the cell in table column ‘Part #’ in the same row – structured reference [#[Part #]]|X|
Paste content of cell ‘[#[Part #]]|X|’ into Find/Replace
Switch to spreadsheet ‘All Inventory.xls’
Hit ‘find next’ – will land on cell C|X^|
switch back to original spreadsheet
return to original cell |Y||X|
type “=’[All Inventory.xls]Sheet1’!$E$|X^|”
go to cell |Y+1||X|
type “=’[All Inventory.xls]Sheet1’!$G$|X^|”
go to cell [Y][X+1]
End macro
I've tried recording this directly, while using relative references. Excel didn't like that. I'm not sure where to go from here.

Locating Lost Excel Macro Formula From Old Data Sheet

I'm resurrecting some old scientific data from the early 2000s.
I need to locate the custom functions that allowed the data to be shown. The spreadsheet that I have is full of #REF! cells, as they are supposed to be calculated based on a custom-defined formula (here, called 'RESECTION').
How do I find this formula? If I can see the math it was performing, I will be able to use this old data, and extend our timeseries significantly.
The spreadsheet is an ".xlsm" document. There is an associated file that is ".XLM"; it provides some GUI-like functionality that is now broken, and I do not see how to access the commands (?) or other VBA that is inside.
I have not had success with this solution.
File with the VBA can be found here; SURVEY.XLM.
Problem is seen here; calling function from SURVEY.XLM. How do I access the formula within here?
I can see that the formula is in there; how do I see the calculation it performs?
RESECTION is a named range refering to cell A4 on the hidden Survey sheet.
In the VBE immediate window type thisworkbook.Sheets(2).visible = true and then thisworkbook.Sheets(2).select.
Cell Survey!A4 contains the value =RESULT(64).
The rest of the sheet contains the macros - first time I've seen or tried to use a filled in macro sheet.
I tried Ctrl+Fto find the definition of RESULT but it comes up with Macro error at cell [SURVEY.XLM]SURVEY!A364.

Load single cell in query in excel

I have n excel files with the same layout, and i want to create a recap file where some info is reported for each file. The info is located in the same specific cells, for example d2 and e2 in every file.
What is the best way to do it? The file names vary without logic and that people that access that file have no skills in coding and macro, so i try to develop something very simple.
I also have no skill in database, but i have managed to create a query with every file in the folder, i have then created a column with the data but i am not able to say that i only want a specific cell, is there a way to do it?
here is a picture of the situation
A formula using INDIRECT can be used, but it will generate a #REF error when the workbook is closed. you could use your macro to open the relevant workbook, and then close it after saving the values
the indirect formula would look something like this:
=INDIRECT("'[Test File.xlxs]Test Data'!$A$7")
or, as a formula using your data:
=INDIRECT("[" & B1 & "]YourSheet!$E$2")

Error when entering table_array with spaces in the name Excel Formula

first my apologies for being a noob with regard to Excel Formulas - I did search and did not find an answer.
I have a spreadsheet that I am trying to modify. I got two spreadsheets from a client, who gave me a working copy and one that he had modified. There is a #REF error in the modified version. If I look at the working copy the formula looks like this.
=VLOOKUP($C$1,'Client Rates'!$A$2:J$228,5,FALSE)
As you can see it has quote marks in the table_array parameter because it does have a space in it. However I cannot enter it this way as it throws an error every time I try. Error is something like this - 'There is a problem with this formula. Not trying to type a formula? ... '
How can I enter the work sheet as a parameter with spaces in the name into the formula?
Did you try F2 to edit formula directly. Then highlight section of formula you wish to change then select the actual data you want evaluated by the formula?
Excel will create the correct string for the sheet and area reference for you.
The problem is you are trying to copy and paste directly from on workbook to another. Copying ctrl-c and pasting ctrl-v from one workbook to another may not have the desired effect. If you copy first to notepad or some other text editor and then paste from that text editor all works fine.

Paste excel link formula using vba

I am working in an organization where we have 100s of excel files on our shared drive. These excel files contain asset numbers to our company assets in different cells within the files. What I would like to do is create a script in vba which would run only once and search through all these excel files using the find method and paste their cell addresses adjacent to their file path (I already have the paths of all the files in an excel sheet). But this address should in the form of a link formula, just like "=A2" so that we can later on modify this formula if there is a change in the position of the asset number without using vba. So suppose,
If cell E3 in the file1 contains asset number "XXX0000", the vba script should paste something like " ='\shared drive\folder path\file1.xlsx]WS'!$E$3 " in the cell next to the path,"\shared drive\folder\". So later on we can manually modify this formula if there is a change in its cell location
Thanks

Resources