You can create a stacked bar chart like this with no VBA:
I have a table of values with a column for each of the colors.
Create a query based on the following SQL:
SELECT tblForGraph.catName,
IIf([catValue]<50,[CatValue],0) AS Green,
IIf([catValue] Between 50 And 90,[CatValue],0) AS...