Dim semieje_mayor,semieje_menor,excentricidad,segunda_excentricidad Dim excentricidad_cuadrada, radio_polar_de_curvatura, Pi Dim coororiX,coordoriY, Coord_sin_retranqueo_X, Coord_sin_retranqueo_Y,USO, meridiano_central, Longitud, Latitud 'GE trabaja con WGS84. En caso de usar otros elipsoides cambiar�amos los dos valores siguientes semieje_mayor=6378137 semieje_menor=6356752.314 coordoriX=Inputbox("Introduce el valor X UTM","Conversor UTM2Geographics",435157.59) coordoriY=Inputbox("Introduce el valor Y UTM","Conversor UTM2Geographics",4815453.64) USO=Inputbox("Introduce el uso al que pertenece el punto","Conversor UTM2Geogr�ficas",30) Pi=3.14159265358979323846 Call calculos_sobre_el_elipsoide(semieje_mayor,semieje_menor) Call calculos_previos(coordoriX,coordoriY,USO) Call UTM2Geographics(Coord_sin_retranqueo_X,Coord_sin_retranqueo_Y) msgbox "Longitud: "&Longitud msgbox "Latitud: "&Latitud Function calculos_sobre_el_elipsoide(semieje_mayor,semieje_menor) excentricidad=sqr(semieje_mayor*semieje_mayor-semieje_menor*semieje_menor)/semieje_mayor segunda_excentricidad=sqr(semieje_mayor*semieje_mayor-semieje_menor*semieje_menor)/semieje_menor excentricidad_cuadrada=segunda_excentricidad*segunda_excentricidad radio_polar_de_curvatura=semieje_mayor*semieje_mayor/semieje_menor End Function Function calculos_previos(coordoriX,coordoriY, USO) 'Eliminamos el retranque de las abcisas del eje X Coord_sin_retranqueo_X=coordoriX-500000 Coord_sin_retranqueo_Y=coordoriY 'De tratarse de coordenadas del hemisferio sur sustituiriamos por: Coord_sin_retranqueo_Y=coordoriY-10000000 End Function Function UTM2Geographics(Coord_sin_retranqueo_X,Coord_sin_retranqueo_Y) 'Aplicamos las ecuaciones de Cotichia-Surace meridiano_central=6*USO-183 Dim Phi Phi=Coord_sin_retranqueo_Y/(6366197.724*0.9996) Dim v v=(radio_polar_de_curvatura*0.9996)/Sqr(1+excentricidad_cuadrada*cos(phi)*cos(phi)) Dim a a=Coord_sin_retranqueo_X/v Dim A1 A1=sin(2*Phi) Dim A2 A2=A1*cos(phi)*cos(phi) Dim J2 J2=Phi+(A1/2) Dim J4 J4=(3*J2+A2)/4 Dim J6 J6=(5*J4+A2*cos(Phi)*cos(Phi))/3 Dim Alfa Alfa=3*excentricidad_cuadrada/4 Dim Beta Beta=5*Alfa*Alfa/3 Dim Gamma Gamma=35*Alfa*Alfa*Alfa/27 Dim Besubfi Besubfi=0.9996*radio_polar_de_curvatura*(phi-Alfa*J2+Beta*J4-Gamma*J6) Dim b b=(Coord_sin_retranqueo_Y-Besubfi)/v Dim Zeta Zeta=excentricidad_cuadrada*a*a*cos(phi)*cos(phi)/2 Dim Xi Xi=a-a*Zeta/3 Dim eta eta=b*(1-eta)+phi Dim variable1 variable1=(exp(Xi)-exp(-Xi))/2 Dim variable2 variable2=Atn(variable1/cos(eta)) Dim Tao Tao=Atn(cos(variable2)*tan(eta)) Longitud=(variable2*180/Pi)+meridiano_central Latitud=(Phi+(1+excentricidad_cuadrada*cos(Phi)*cos(Phi)-((3*excentricidad_cuadrada*sin(Phi)*cos(Phi)/2)*(Tao-Phi)))*(Tao-Phi))*180/Pi End function