This proposed solution makes several changes to the spreadsheets and uses numerous helpers.
On the Calendar sheet the monthly calendars are stacked vertically and the cells containing the dates for Sundays are actual dates (3/5/17) with custom formatting d applied.
On the Options sheet the date of the Sunday for the week in question needs to be entered in B1,
The rest of the row will fill by formula by use of addition and the range B2:H6 populates using the formula: The range A9:A107 is populated using the formula: The ingredients were separated using the 'Text to Column' feature, delimited by comma.
The range B111:H130 is populated using the array entered formula*: The range A251:F270 is populated by the formula: The range J252:J270 is populated using the array entered formula*: On the Shopping lists Sheet the following formula populates the shopping list: =Options!J252
*Array entered formulas are activated by pressing CTRL+SHIFT+ENTER to activate the array, not just ENTER. You will know the array is active when you see curly braces { } appear around your formula. If you do not CTRL+SHIFT+ENTER you will get an error or a clearly incorrect answer.
An effort is made to use simpler formulas so as to make the least amount of reduction in the performance of the workbook, however it is suggested that you complete the menu on the Calendar sheet before entering a new date on the Options sheet. It may become necessary to change the calculation mode of the workbook from Automatic to Manual.
Let us know if you have any questions.
Bookmarks