Code VBA pour avoir un format de coordonnées GPS

bonjour à tous,

je cherche un code VBA qui me mettrait dans quelques colonnes d’un tableau le format de coordonnées GPS. Ce format serait automatiquement affiché dans mes Combobox. Juste à l’utilisateur de rentrer les coordonnées chiffrées, après est il possible de pouvoir choisir pour la LAT N ou S et LONG E ou W ?

En vous remerciant,

A+

Bonjour benji77,

Je ne comprends pas votre demande
c'est quoi ce "format de coordonnées GPS" pour vous ?

A+

bonjour BrunoM45

Le format en DMS comme celui ci:

45° 46' 52" N 108° 30' 14" W

Latitude : dd mm ss,ss N ou S

Longitude : ddd mm ss,ss E ou W

Puis après la formule afin de les convertir en DD et DDM, le tout en VBA.

J’enverrai un fichier Excel demain, aujourd’hui je ne peux pas.


en vous remerciant,

A+

Bonjour a tous,

Voici le fichier Excel.

Colonnes 8 a 10, 17 et 18: format GPS en DMS, il y a une colonne latitude et longitude indique dans la feuille.

Colonnes 19 et 20: conversion DDM

colonnes 21 et 22 conversions en DD

Latitude: dd mm ss,ss N ou S et Longitude: ddd mm ss,ss E ou W.

Besoin d'etre guide pour le code VBA,

En vous remerciant

a+

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.
   Degree_Deg = Replace(Degree_Deg, "~", "°")

   degrees = CDbl(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 = CDbl(Mid(Degree_Deg, InStr(1, Degree_Deg, "°") + 1, _
             InStr(1, Degree_Deg, "'") - InStr(1, Degree_Deg, "°") - 1)) / 60
   ' Set seconds to the number to the right of "'" that is
   ' converted to a value and then divided by 3600.
   seconds = CDbl(Mid(Degree_Deg, InStr(1, Degree_Deg, "'") + _
           1, Len(Degree_Deg) - InStr(1, Degree_Deg, "'") - 1)) / 3600

   Convert_Decimal = degrees + minutes + seconds

End Function
29test-2.xlsm (67.44 Ko)

J'ai refait le formulaire de manière plus structure

26test-2-3.xlsm (70.87 Ko)

Re,

J'ai crée mon module et insèr le code pour la conversion DMS vers DD.

J'ai mis dans ma cellule la formule:

=Convert_Decimal(Q3) pour toute la colonne 21

=Convert_Decimal(R3) pour toute la colonne 22

Cependant je n'arrive pas a trouver la formule/code VBA qui met le format DMS et l'appliquera sur toute la colonne.

Dans les textbox je dois avoir ce format DMS LAT: 00⁰00'00.0000" / 000⁰00'00.0000" et le renseigner en chiffre et N/S et E/W

Pouvez vous m'aiguiller ?

a+

21test-2-3.xlsm (64.98 Ko)

Bonjour a tous,

Est il possible d'afficher dans mes textbox (1 a 8) avec ce format DMS LAT et LONG : 00⁰00'00.00" et 000⁰00'00.00" pour que je le renseigne après en chiffre (avec N/S et E/W), sachant qu après je dois convertir les textbox 8 et 9 en DDM et DD ?

Pouvez vous m'aiguiller ?

a+

Bonjour a tous,

J'ai essaye d'appliquer dans un module ceci

Sub DefinirFormatCell()

With Worksheets("test").Range("H3:I3")

Range("H3").NumberFormat = "00°00'00.00''"

Range("I3").NumberFormat = "000°00'00.00''"

End With

End Sub

Mais cela ne fonctionne pas sur l'affichage de la cellule de mon formulaire.

a+

Bonjour a tous,

Je cherche a avoir un format de cellule qui soit tout le temps visible dans les textbox.

image

Pour Latitude : H3/J3/L3/Q3 : "00°00'00.00''" avec N ou S

Pour Longitude : I3/K3/M3/R3 : "000°00'00.00''" avec W ou E

image

J'ai integre ce code dans ma textbox1 qui me me met les valeurs rentrées au format 00°00'00.00'' mais pour eviter les erreurs et macher la saisie avoir cette valeur dans toujours presente dans mes textbox

Private Sub TextBox1_AfterUpdate()
    Dim v@
    With TextBox1
        If IsNumeric(.Value) Then
            v = CCur(.Value)
            .Value = Format(v, "00°00'00.00''")
                           End If
    End With
End Sub

En vous remerciant de votre soutien,

a+

Re,

J'ai mis dans "appearence value" le format voulu 00°00'00'' ou 000°00'00'', ainsi cela m'affiche dans les textbox le format adapté.

Cependant, quand j'appuie sur le bouton RESET , il ne conserve pas l'affichage du format dans les textbox, ce que je souhaiterais.

Pouvez-vous m'aider ?

a+

Rechercher des sujets similaires à "code vba format coordonnees gps"