In Shapes.Range(Index), Index can be a number or a string.
If the Index of the Range is a String, it must be the name of a ShapeRange Object which is a Shapes Collection My bad, I missed this before.
With the Shapes Collection. one uses the Item Method, (Default of the Shapes collection,) thusly Shapes(index) where Index is the Name of the Shape to return a particular Shape.
I now think that you wanted
'Assumes that each Shape's name is stored in a cell in Target.
For Each strRng in Target
ActiveSheet.Shapes(strRng).Fill.ForeColor.ObjectThemeColor = msoThemeColorAccent2.