In truth it might be a tad better to dispense with the Array and just use the Range, does this make more sense ?
Essentially iterating the values to replace as dictated by the values in the Range in G and replacing them in the B range with the value adjacent to the criteria (Range in H).
The End(xlUp) is used in essence to ascertain the last used cell in the range of interest (ie goes to the bottom of Column G and then Upwards until it finds "something") - so as you add more criteria and re-run the ranges update without you being required to adjust your code to encapsulate the new data.
Bookmarks