To get a weighted average, you need to divide by the sum of the weights, which isn't a big issue for your subscores since your weights seem to add up to very close to 1.
But, when you arrive at an overall score, you need to determine what your best and worst cases are and what the relative weight of a 'fail' is relative to an 'exceeds', and the value of a 'meets', then somehow use those values to interpolate between them.
For example, the relative values of an Exceeds could be 2, a Meets 1, and a Fails -3
Then, what is the best case? That could be 3 Exceeds for each category, so the best score would be +6 (including the weights).
Then, what is the worst case? That could be 3 Fails for each category, so the worst score would be -9 (including the weights).
So, then, on a 100 point scale (or %), the formula in AH20 would be
=(SUMPRODUCT(AI...) + SUMPRODUCT(AJ...)*2-SUMPRODUCT(AH...)*3)+9)(6+9) formatted for percent (the +9 is because we need to subtract a -9, the lowest score).