Como converter graus/minutos/segundos ângulos de ou para ângulos decimais no Excel

O suporte para o Office 2003 terminou

A Microsoft terminou o suporte para o Office 2003 em 8 de Abril de 2014. Esta alteração afetou as suas atualizações de software e opções de segurança. Aprenda o que isto significa para si e como pode ficar protegido.

IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine translation ou MT), não tendo sido portanto revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática… erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado.

Clique aqui para ver a versão em Inglês deste artigo: 213449

Sumário
Medições angulares normalmente são expressos em unidades de graus, minutos e segundos (DMS). Um grau é igual a 60 minutos e um minuto é igual a 60 segundos. Para simplificar a alguns cálculos matemáticos poderá express angulares medições em graus e fracções decimais de graus.

Este artigo contém uma função personalizada de exemplo que pode utilizar para converter um valor de grau armazenado num formato decimal, DMS armazenadas em formato de texto e um exemplo de função que converte DMS para um valor de grau armazenado no formato decimal.
Mais Informação
A Microsoft fornece exemplos de programação apenas, a título sem garantia expressa ou implícita, incluindo, sem limitação, garantias implícitas de comercialização e/ou adequação a um fim específico. Este artigo pressupõe que está familiarizado com a linguagem de programação apresentada e as ferramentas utilizadas para criar e depurar procedimentos. Os profissionais de suporte da Microsoft podem ajudar a explicar a funcionalidade de um determinado procedimento, mas não modificarão estes exemplos para proporcionarem funcionalidades adicionais nem criarão procedimentos adaptados às necessidades específicas.
Se dispõe de limitada experiência de programação, poderá pretender contactar um Microsoft Certified Partner ou a serviços de aconselhamento da Microsoft. Para mais informações, visite estes Web sites da Microsoft:

Microsoft certificada parceiros- https://Partner.microsoft.com/global/30000104

Serviços de aconselhamento da Microsoft- http://support.microsoft.com/gp/advisoryservice

Para mais informações sobre as opções de suporte disponíveis e sobre como contactar a Microsoft, visite o seguinte Web site da Microsoft:http://support.microsoft.com/default.aspx?scid=fh EN-US; CNTACTMS

Converter graus Decimal graus/minutos/segundos

O seguinte Microsoft Visual Basic para função personalizada aplicações aceita um ângulo formatado como um valor decimal e converte-o para um valor de texto apresentado em graus, minutos e 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 WithEnd Function				
Para utilizar esta função, crie uma fórmula de conversão, como no exemplo seguinte:
  1. Inicie o Excel e prima ALT + F11 para iniciar o Visual Basiceditor.
  2. No menu Inserir , clique em módulo.
  3. Introduza o código de exemplo para o customfunction de Convert_Degree acima descrito na folha do módulo.
  4. Prima ALT + F11 para voltar ao excel.
  5. Na célula A1, escreva 10.46.
  6. Na célula A2, escreva a seguinte fórmula:
    =Convert_Degree(a1)


    A fórmula devolve 10 ° 27'36 "

Converter graus/minutos/segundos para graus Decimal

O seguinte Microsoft Visual Basic para função personalizada aplicações aceita uma cadeia de texto de graus, minutos e segundos formatados com o mesmo formato exacto que devolve a função Convert_Degree (por exemplo, 10° 27' 36") e converte-o para um ângulo formatado como um valor decimal. Esta é exactamente o inverso da função personalizada Convert_Degree.

Aviso: esta função personalizada falha se o argumento de Degree_Deg não é o seguinte formato
<degrees>° <minutes>' <seconds>"</seconds></minutes></degrees>
mesmo que o valor de segundos é 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 + secondsEnd Function				
Para utilizar esta função, crie uma fórmula de conversão, como no exemplo seguinte:
  1. Inicie o Excel e prima ALT + F11 para iniciar o Visual BasicEditor.
  2. No menu Inserir , clique em módulo.
  3. Introduza o código de exemplo para o customfunction de Convert_Decimal acima descrito na folha do módulo.
  4. Prima ALT + F11 para voltar ao excel.
  5. Na célula A1, escreva a seguinte fórmula:
    = Convert_Decimal("10° 27' 36""")
    Nota: é necessário escrever três aspas ("" "), a endof o argumento desta fórmula para equilibrar a cotação marcar para o secondsand do ponto de interrogação para a cadeia de texto. Uma referência de célula não requerem a marca de aquotation.
  6. A fórmula devolve 10.46

Aviso: Este artigo foi traduzido automaticamente

Propriedades

ID do Artigo: 213449 - Última Revisão: 09/23/2015 06:27:00 - Revisão: 9.0

Microsoft Office Excel 2003, Microsoft Excel 2010, Microsoft Office Excel 2007

  • kbfunctions kbconvert kbsample kbdtacode kbhowto kbprogramming kbmt KB213449 KbMtpt
Comentários