I'll get straight down to business with an explanation of what I'm trying to achieve ...
I have a table as follows:
\1 - note: cells containing times and temperatures are numeric values, I've used custom formatting to add " mins" and "°C" on the end
In one cell, a user can input a time period (in mins), and in another cell, I would like to output the start and end columns (in letter/s) for the chosen time.
For example, in the link above, if the value inputted '30' then the start column is 'C' and the end column is 'G'. If the user had inputted '60', then the results would be 'H' and 'K', etc.
I am able to find the start column with the following equation:
=SUBSTITUTE(ADDRESS(1,MATCH(VALUE,C2:P2,0)+2,4),"1","")
I am struggling, however, to find the end column for the chosen time.
If each time had the same number of temperatures then it would be a simple case of adding the number of temperatures per time, minus 1, after the "+2".
My first idea was to copy the above function, but to change the "0" in the MATCH function to "-1", in order to find the next greatest time value. However, it appears that using "-1" in the MATCH function only works if the range is in descending order - my times are always in ascending order.
I have a further problem in that the time periods are not always the same values (i.e. it won't always be 30-60-90-120, it could for example be 30-45-60-75). So as far as I know, there is no way in advance of knowing the next time period up (and then subsequently taking one column to the left).
I think I am capable of finding a solution, but not without it being extremely messy.
One possible workaround I have considered involves the following:
- Add a new row between rows 2 and 3, which has the time values in each cell (i.e. from column C, values of 30-30-30-30-30-60-60-60-60-90-90-90-120-120) - effectively duplicating the time row, but not merging cells
- Use the COUNTIF function to find the number of cells in that row containing the chosen time
- Add this value, minus 1, after the "+2" in the above formula, i.e. =SUBSTITUTE(ADDRESS(1,MATCH(VALUE,C2:P2,0)+2+COUNTIF(C3:P3,"="&VALUE")-1,4),"1","")
Ideally, however, I would like to avoid having to add a new row, because it's not a particularly 'clean' solution, and I have quite a lot of these tables!
Any ideas would be greatly appreciated!
Bookmarks