I'll attempt to describe how this works. You may want to have the attached open. It could help in following this wall of text. As stated above the setup is a little tedious, but once completed should be maintenance free.
The help file explains two syntax forms of INDEX. They are the Array form and the Reference form. The attached uses the Reference form.
It is:
INDEX(reference, row_num, [column_num], [area_num])
Before beginning find this named rang definition table in the attached BF1:BG4
Exer_Tables |
=Training_Plan!$AN$3:$AP$8,Training_Plan!$AS$3:$AU$8,Training_Plan!$AN$12:$AP$17,Training_Plan!$AS$12:$AU$17,Training_Plan!$AN$21:$AP$26,Training_Plan!$AS$21:$AU$26,Training_Plan!$AN$30:$AP$35,Training_Plan!$AS$30:$AU$35 |
Exer_Name |
=Training_Plan!$AZ$1:$AZ$8 |
Exer_Category |
=Training_Plan!$BA$1:$BA$6 |
Exer_Target |
=Training_Plan!$BB$1:$BB$3 |
Take note of Exer_Tables and its non contiguous range. It will be the first argument in INDEX. Each section in the definition must be separated by a comma. These are the areas and INDEX understands them to be numbered left to right 1 to 8. They are returned by a MATCH function in the area_num argument. Establishing the order of the area_nums is the most tedious step. With Name Manager open simply select the first section, followed by a comma, select the next section, followed by a comma ... repeat and rinse. I did it selecting tables left to right and then down, left to right and down ... etc. etc.
It is good that you have consistency in the row and column headers of each table. This means that no matter what area_num (and therefore exercise/table) is the active area_num all row and column arguments passed to INDEX will apply to and only apply to the current area_num.
Please also take note that the area_nums/Exercises are in exactly the same order as Exer_Names in AZ1:AZ8. Exer_Names serves as the DV list for the drop downs and the lookup_array in the area_num MATCH function. The matching order assures MATCH will return the correct Table.
The rest of the definitions also serve as DV lists for the remaining drop downs and as lookup_array arguments for the remaining MATCH function calls.
The final formula in B18:Copy that cell and paste into cells B21, B24, B27 ... etc.
I put some fake data into the remaining seven tables so you can experiment and confirm that this works properly.
Does this do what you hoped for?
Bookmarks