Reemplazar términos específicos con otros

Tengo unos cientos de files de Excel que contienen 3 columnas: nombre, estado, número de teléfono y con miles de filas de datos en cada file. Los datos en la columna de Estado están abreviados (AL para Alabama, FL para Florida, etc.). ¿Hay alguna manera de cambiar todas las abreviaturas con el nombre completo en un movimiento? Sé que puedo searchlos y replacelos manualmente o con la function de búsqueda, pero ¿se puede hacer a través de una macro?

Para cada file y cada hoja dentro del file, select las celdas que desea traducir y ejecute esta macro:

Sub stitutions() Dim r As Range Dim fnd As String, rep As String abr = "AL,AK,AS,AZ,AR,CA,CO,CT,DE,DC,FM,FL,GA,GU,HI,ID,IL,IN,IA,KS,KY,LA,ME,MH,MD,MA,MI,MN,MS,MO,MT,NE,NV,NH,NJ,NM,NY,NC,ND,MP,OH,OK,OR,PW,PA,PR,RI,SC,SD,TN,TX,UT,VT,VI,VA,WA,WV,WI,WY" states = "Alabama,Alaska,American Samoa,Arizona,Arkansas,California,Colorado,Connecticut,Delaware,District Of Columbia,Federated States Of Micronesia,Florida,Georgia,Guam Gu,Hawaii,Idaho,Illinois,Indiana,Iowa,Kansas,Kentucky,Louisiana,Maine,Marshall Islands,Maryland,Massachusetts,Michigan,Minnesota,Mississippi,Missouri,Montana,Nebraska,Nevada,New Hampshire,New Jersey,New Mexico,New York,North Carolina,North Dakota,Northern Mariana Islands,Ohio,Oklahoma,Oregon,Palau,Pennsylvania,Puerto Rico,Rhode Island,South Carolina,South Dakota,Tennessee,Texas,Utah,Vermont,Virgin Islands,Virginia,Washington,West Virginia,Wisconsin,Wyoming" aryabr = Split(abr, ",") arystates = Split(states, ",") Set r = Intersect(ActiveSheet.UsedRange, Selection) For i = LBound(aryabr) To UBound(aryabr) fnd = aryabr(i) rep = arystates(i) r.Replace What:=fnd, Replacement:=rep, SearchOrder:=xlByColumns, MatchCase:=True Next i End Sub