Comment convertir des degrés décimaux en degrés, minutes et secondes dans Excel ?
Vous disposez parfois d’une liste de données exprimées en degrés décimaux dans une feuille de calcul et devez désormais les convertir au format degrés, minutes et secondes, comme illustré dans les captures d’écran suivantes. Comment effectuer rapidement cette conversion dans Excel ?
![]() | ![]() | ![]() |
Convertir des degrés décimaux en degrés, minutes, secondes à l’aide de VBA
Convertir des degrés, minutes, secondes en degrés décimaux à l’aide de VBA
Convertir des degrés décimaux en degrés, minutes, secondes à l’aide de VBA
Veuillez suivre les étapes ci-dessous pour convertir des degrés décimaux en degrés, minutes et secondes à l’aide d’un code VBA.
1. Maintenez la touche ALT enfoncée et appuyez sur F11 pour ouvrir une fenêtre Microsoft Visual Basic pour Applications.
2. Cliquez sur Insertion > Module, puis copiez le code VBA dans le module.
VBA : Convertir un degré décimal en degrés, 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 sur le bouton Exécuter ou appuyez sur F5 pour exécuter le code VBA.
4. Une boîte de dialogue s’affiche à l’écran, vous permettant de sélectionner les cellules à convertir. Voir la capture d’écran :

5. Cliquez sur OK, puis les données sélectionnées sont converties en degrés, minutes et secondes. Voir la capture d’écran :
![]() | ![]() | ![]() |
Conseil : Le code VBA ci-dessus remplace vos données d’origine. Pensez donc à en faire une copie avant de l’exécuter.
Convertir des degrés, minutes, secondes en degrés décimaux à l’aide de VBA
Vous souhaitez parfois convertir des données du format degrés/minutes/secondes en degrés décimaux ? Le code VBA suivant vous permet de le faire en un clin d’œil.
1. Maintenez la touche ALT enfoncée et appuyez sur F11 pour ouvrir une fenêtre Microsoft Visual Basic pour Applications.
2. Cliquez sur Insertion>Module, puis copiez le code VBA dans le module.
VBA : Convertir des degrés, minutes et secondes en degrés décimaux
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 cette fenêtre. Sélectionnez une cellule vide, par exemple la cellule A1, saisissez la formule suivante :=ConvertDecimal(«10° 27' 36»«») (« 10° 27' 36" » représente le degré que vous souhaitez convertir en degré décimal ; vous pouvez l’adapter selon vos besoins), puis appuyez sur la touche Entrée. Consultez les captures d’écran :
![]() | ![]() | ![]() |




