Virtually any procedure in SAS that can calculate a mean can also calculate a weighted mean. Why not start with the obvious one, PROC MEANS. Just add a weight statement. You probably should weight by the INVERSE of the variance, not the standard deviation. Get the weight variable in a data step first.
proc means data=a;