Ce programme permet de convertir des données de positions géographiques qui sont en Degrés/Minutes/Scondes vers des Degrés décimaux et vice versa.
Source / Exemple :
'Ce programme est composé de 3 fenêtres dont les codes sources sont les suivants :
'Première feuille
'__________________
'Alain LE GALLOU
'04/11/01
'modifie le 18/11/01
'convertisseur : Page d'accueil
Private Sub cmddddms_Click()
'on charge le convertiseeur dd -> dms
frmdddms.Show
End Sub
Private Sub cmddmsdd_Click()
'on charge le convertiseeur dms -> dd
frmdmsdd.Show
End Sub
Private Sub cmdfin_Click()
' fin de l'application
End
End Sub
'Deuxième feuille
'__________________
'Alain LE GALLOU
'04/11/01
'modifie le 18/11/01
'conversion de données dd en dms
Option Explicit
Dim decim As Single
Dim rep As String 'le resultat est la concaténation de sigles et de variables
Dim d As Integer ' variable pour les degrés
Dim m As Integer ' idem pour les minutes
Dim s As Integer ' idem pour les secondes
Private Sub cmdcalc2_Click()
' attention des erreurs d'arrondis peuvent apparaître
' le résultat est fiable à + ou - 1 seconde
d = Int(decim) 'on recup la partie entière de decim
m = Int((decim - d) * 60) 'on recup la partie entière de la multiplication du reste * 60
s = Int((((decim - d) * 60) - m) * 60) 'on recup la partie entière de la multiplication du reste * 60
rep = (d & "°" & m & "'" & s & "''") 'le resultat correspond à d degrés m minutes et s secondes
txtrep2.Text = rep ' la réponse est placé dans la 2eme textbox
End Sub
Private Sub cmdexit_Click()
'on retourne à l'accueil
Unload Me
frmaccueil.Show
End Sub
Private Sub txtdecim_Change()
' on lit la valeur decimale entree par l'utilisateur
decim = txtdecim.Text
End Sub
'Troisième feuille
'___________________
' Alain LE GALLOU
' 04/11/01
' modifie le 18/11/01
' conversion de données dms en dd
' algorithme de Jérôme Gautier
Option Explicit
Dim deg As Integer 'variable pour les degrés
Dim min As Integer 'variable pour les minutes
Dim sec As Integer 'variable pour les secondes
Dim rep As Single 'variable pour la réponse
Private Sub cmdcalc_Click()
'on fait la conversion et on place la reponse dans la 4eme textbox
rep = deg + min / 60 + sec / 3600
txtrep.Text = rep
End Sub
Private Sub cmdquit_Click()
' retour à l'accueil
Unload Me
frmaccueil.Show
End Sub
Private Sub txtdeg_Change()
'on lit la valeur en degrés donnée par l'utilisateur
deg = txtdeg.Text
End Sub
Private Sub txtmin_Change()
'on lit la valeur en minutes donnée par l'utilisateur
min = txtmin.Text
End Sub
Private Sub txtsec_Change()
'on lit la valeur en secondes donnée par l'utilisateur
sec = txtsec.Text
End Sub
Conclusion :
Le code n'est pas optimisé. Il n'est peut-être pas très bien écrit mais c'était un de mes premiers programmes en VB.
Je vous demande juste de m'envoyer un message pour me dire si vous utilisez ce programme sinon, j'autorise à tout le monde de l'utiliser dans un but non lucratif.
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.