I have a defined table of courses, dates, and instructors. When in Excel, I can obviously filter the table to only show one course. I can also create another worksheet and use INDEX/MATCH array formula to show a filtered table. However, I am trying to define a named range that would output the two dimensional array of the filtered table.
Course Date Instructor
Winemaking 7/3 Fred
Paper Airplanes 7/16 Bill
Advanced Kazoo 7/22 Sally
Winemaking 8/6 Harry
Cooking 101-Toast 8/19 Beth
Advanced Kazoo 8/24 Xavier
Winemaking 9/14 Fred
Paper Airplanes 9/25 Lilly
I would like a named range of, say CourseWine, to equal:
Winemaking 7/3 Fred
Winemaking 8/6 Harry
Winemaking 9/14 Fred
I am hoping for a named range because it:
- Is incredibly easy to show with a SharePoint Excel Web Part
- Would not require any updating of a helper table
- Is less likely to get mucked up by other users editing the spreadsheet
I have tried a couple of combinations (one from Excel - Array formula as name range not working) but every time the named range is only the first row of my desired filtered output.
=INDEX(Table,MATCH(1,(Table[Course]="Winemaking")*(Table[Date]>TODAY()),0),0)
=INDEX(Table,SMALL(IF(Table[Course]="Winemaking",ROW(Table[Course])-MIN(ROW(Table[Course]))+1),ROW(INDIRECT("1:"&COUNTIF(Table[Course],"Winemaking")))),0)
Is there a formula that I can define a named range with that will return the two dimensional array? I could also achieve this with a pivot table, but does not fully prevent someone from changing the table and messing up the view from SharePoint... I cannot resort to sorting the list by course instead of by date. I would also like to avoid VBA. And is this even possible?