Comment convertir des degrés décimaux en degrés minutes secondes dans Excel?
Parfois, vous pouvez avoir une liste de données affichées sous forme de degrés décimaux dans une feuille de calcul, et maintenant vous devez convertir les degrés décimaux en degrés, minutes et secondes au formatage comme indiqué dans les captures d'écran suivantes, comment pouvez-vous obtenir la conversation rapidement dans Excel?
Convertir des degrés décimaux en degrés, minutes, secondes avec VBA
Convertir des degrés, minutes, secondes en degrés décimaux avec VBA
Convertir des degrés décimaux en degrés, minutes, secondes avec VBA
Veuillez suivre les étapes ci-dessous pour convertir les degrés décimaux en degrés, minutes et secondes avec le code VBA.
1. Tenez ALT bouton et appuyez F11 sur le clavier pour ouvrir un Microsoft Visual Basic pour Application fenêtre.
2. Cliquez insérer > Moduleet copiez le VBA dans le module.
VBA: Convertissez le degré décimal en degré, minutes et secondes
Sub ConvertDegree()
'Update 20130815
Dim Rng As Range
Dim WorkRng As Range
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
For Each Rng In WorkRng
num1 = Rng.Value
num2 = (num1 - Int(num1)) * 60
num3 = Format((num2 - Int(num2)) * 60, "00")
Rng.Value = Int(num1) & "°" & Int(num2) & "'" & Int(num3) & "''"
Next
End Sub
3. Cliquez Courir bouton ou appuyez sur F5 pour exécuter le VBA.
4. Une boîte de dialogue s'affiche à l'écran et vous pouvez sélectionner les cellules que vous souhaitez convertir. Voir la capture d'écran:
5. Cliquez OK, puis les données sélectionnées sont converties en degrés, minutes et secondes. Voir la capture d'écran:
Conseil : L'utilisation du code VBA ci-dessus perdra vos données d'origine, vous feriez donc mieux de copier les données avant d'exécuter le code.
Convertir des degrés, minutes, secondes en degrés décimaux avec VBA
Parfois, vous souhaiterez peut-être convertir les données au format degrés / minutes / secondes en degrés décimaux, le code VBA suivant peut vous aider à le faire rapidement.
1. Tenez ALTouche T et appuyez sur F11 sur le clavier pour ouvrir une fenêtre Microsoft Visual Basic pour Application.
2. Cliquez insérer > Moduleet copiez le VBA dans le module.
VBA: Convertissez le degré, les minutes et les secondes en degré décimal
Function ConvertDecimal(pInput As String) As Double
'Updateby20140227
Dim xDeg As Double
Dim xMin As Double
Dim xSec As Double
xDeg = Val(Left(pInput, InStr(1, pInput, "°") - 1))
xMin = Val(Mid(pInput, InStr(1, pInput, "°") + 2, _
InStr(1, pInput, "'") - InStr(1, pInput, _
"°") - 2)) / 60
xSec = Val(Mid(pInput, InStr(1, pInput, "'") + _
2, Len(pInput) - InStr(1, pInput, "'") - 2)) _
/ 3600
ConvertDecimal = xDeg + xMin + xSec
End Function
3. Enregistrez le code et fermez la fenêtre, sélectionnez une cellule vide, par exemple, la cellule A1, entrez cette formule = ConvertDecimal ("10 ° 27 '36" "") ("10 ° 27 '36" "" correspond au degré que vous souhaitez convertir en degré décimal, vous pouvez le modifier selon vos besoins), puis cliquez sur Entrer bouton. Voir les captures d'écran: