Cómo convertir ángulos de grados/minutos/segundos a o desde ángulos decimales en Excel

Seleccione idioma Seleccione idioma
Id. de artículo: 213449 - Ver los productos a los que se aplica este artículo
Expandir todo | Contraer todo

En esta página

Resumen

Las mediciones angulares se suelen expresar en unidades de grados, minutos y segundos (DMS). Un grado es igual a 60 minutos y uno minuto es igual a 60 segundos. Para simplificar algunos cálculos matemáticos que puede para expresar las mediciones angulares en grados y fracciones decimales de grados.

En este artículo contiene una función personalizada de ejemplo que puede utilizar para convertir grados cuyo valor almacenado en formato decimal, a grados, en texto formato y una función de ejemplo que convierte DMS para un valor de grado almacenado en formato decimal.

Más información

Microsoft proporciona ejemplos de programación con fines ilustrativos únicamente, sin ninguna garantía tanto expresa como implícita, incluyendo, pero sin limitarse a, las garantías implícitas de comerciabilidad y/o idoneidad para un fin determinado. En este artículo se supone que está familiarizado con el lenguaje de programación que se muestra y las herramientas utilizadas para crear y depurar procedimientos. Profesionales de soporte técnico de Microsoft pueden explicarle la funcionalidad de un determinado procedimiento, pero no modificarán estos ejemplos para ofrecer mayor funcionalidad ni crearán procedimientos adaptados a sus necesidades específicas.
Si tiene poca experiencia en programación, desea ponerse en contacto con un Microsoft Certified Partner o servicios de asesoramiento de Microsoft. Para obtener más información, visite estos sitios Web de Microsoft:

Microsoft certificada Partners: https://Partner.Microsoft.com/global/30000104

Servicios de asesoramiento de Microsoft: http://support.Microsoft.com/GP/advisoryservice

Para obtener más información acerca de las opciones de soporte que están disponibles y cómo ponerse en contacto con Microsoft, visite el siguiente sitio Web de Microsoft:http://support.Microsoft.com/default.aspx?scid=fh;EN-US;CNTACTMS

Convertir los grados decimales a grados, minutos, segundos

El siguiente de Visual Basic para Aplicaciones de Microsoft personalizado la función acepta un ángulo con formato de un valor decimal y lo convierte a un valor de texto que se muestra en grados, minutos y segundos.

Function Convert_Degree(Decimal_Deg) As Variant
    With Application
        'Set degree to Integer of Argument Passed
        Degrees = Int(Decimal_Deg)
        'Set minutes to 60 times the number to the right
        'of the decimal for the variable Decimal_Deg
        Minutes = (Decimal_Deg - Degrees) * 60
        'Set seconds to 60 times the number to the right of the
        'decimal for the variable Minute
        Seconds = Format(((Minutes - Int(Minutes)) * 60), "0")
        'Returns the Result of degree conversion
       '(for example, 10.46 = 10~ 27  ' 36")
        Convert_Degree = " " & Degrees & "° " & Int(Minutes) & "' " _
            & Seconds + Chr(34)
    End With
End Function
				
Para utilizar esta función, cree una fórmula de conversión, como en el ejemplo siguiente ejemplo:
  1. Inicie Excel y presione ALT+F11 para iniciar el de Visual Basic Editor.
  2. En el menú Insertar , haga clic en módulo.
  3. Escriba el código de ejemplo para el Convert_Degree personalizado función que se describe anteriormente en la hoja de módulo.
  4. Presione ALT+F11 para volver a excel.
  5. En la celda A1 escriba 10.46.
  6. En la celda A2, escriba la fórmula siguiente:
    =Convert_Degree(a1)


    La fórmula devuelve 10 ° 27'36 "

Conversión de grados, minutos, segundos a grados decimales

El siguiente de Visual Basic para Aplicaciones de Microsoft personalizado la función acepta una cadena de texto de grados, minutos y segundos en formato en el mismo formato exacto que devuelve la función Convert_Degree (por ejemplo, 10° 27' 36 ") y lo convierte en un ángulo como un valor decimal. Esto es exactamente el inverso de la función personalizada Convert_Degree.

Advertencia: esta función personalizada se produce un error si no está en el argumento Degree_Deg el siguiente formato
<degrees>° <minutes>' <seconds>" </seconds></minutes></degrees>
incluso si el valor de segundos es 0.
Function Convert_Decimal(Degree_Deg As String) As Double
   ' Declare the variables to be double precision floating-point.
   Dim degrees As Double
   Dim minutes As Double
   Dim seconds As Double
   ' Set degree to value before "°" of Argument Passed.
   degrees = Val(Left(Degree_Deg, InStr(1, Degree_Deg, "°") - 1))
   ' Set minutes to the value between the "°" and the "'"
   ' of the text string for the variable Degree_Deg divided by
   ' 60. The Val function converts the text string to a number.
   minutes = Val(Mid(Degree_Deg, InStr(1, Degree_Deg, "°") + 2, _
             InStr(1, Degree_Deg, "'") - InStr(1, Degree_Deg, _
             "°") - 2)) / 60
    ' Set seconds to the number to the right of "'" that is
    ' converted to a value and then divided by 3600.
    seconds = Val(Mid(Degree_Deg, InStr(1, Degree_Deg, "'") + _
            2, Len(Degree_Deg) - InStr(1, Degree_Deg, "'") - 2)) _
            / 3600
   Convert_Decimal = degrees + minutes + seconds
End Function
				
Para utilizar esta función, cree una fórmula de conversión, como en el ejemplo siguiente ejemplo:
  1. Inicie Excel y presione ALT+F11 para iniciar el de Visual Basic Editor.
  2. En el menú Insertar , haga clic en módulo.
  3. Escriba el código de ejemplo para el Convert_Decimal que personalizado función que se describe anteriormente en la hoja de módulo.
  4. Presione ALT+F11 para volver a excel.
  5. En la celda A1 escriba la fórmula siguiente:
    = Convert_Decimal("10° 27' 36""")
    Nota: es necesario escribir tres comillas ("" ") al final el argumento de esta fórmula para equilibrar las comillas para los segundos y las comillas de la cadena de texto. Una referencia de celda no requerirá un signo de interrogación.
  6. La fórmula devuelve 10.46

Propiedades

Id. de artículo: 213449 - Última revisión: domingo, 28 de abril de 2013 - Versión: 16.0
La información de este artículo se refiere a:
  • Microsoft Office Excel 2003
  • Microsoft Excel 2010
  • Microsoft Office Excel 2007
Palabras clave: 
kbfunctions kbconvert kbsample kbdtacode kbhowto kbprogramming kbmt KB213449 KbMtes
Traducción automática
IMPORTANTE: Este artículo ha sido traducido por un software de traducción automática de Microsoft (http://support.microsoft.com/gp/mtdetails) en lugar de un traductor humano. Microsoft le ofrece artículos traducidos por un traductor humano y artículos traducidos automáticamente para que tenga acceso en su propio idioma a todos los artículos de nuestra base de conocimientos (Knowledge Base). Sin embargo, los artículos traducidos automáticamente pueden contener errores en el vocabulario, la sintaxis o la gramática, como los que un extranjero podría cometer al hablar el idioma. Microsoft no se hace responsable de cualquier imprecisión, error o daño ocasionado por una mala traducción del contenido o como consecuencia de su utilización por nuestros clientes. Microsoft suele actualizar el software de traducción frecuentemente.
Haga clic aquí para ver el artículo original (en inglés): 213449

Enviar comentarios

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com