Boostez vos compétences Excel avec notre communauté !
Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force.
Apprenez, échangez, progressez – et tout ça gratuitement !
👉 Inscrivez-vous maintenant !
pour diverses raisons (parmi lesquelles ma nullité ainsi que la facilité d'affichage sans avoir refaire le monde au point où j'en suis), je construis un petit projet en VBA au sein d'une macro Excel (2007 en l'occurrence).
Pour la petite histoire ce projet concerne des calculs effectués sur des points reçus d'un GPS par le port série.
Par commodité, j'utilise un objet auquel j'adjoins des propriétés :
Code:
Type PointGPS
lat As Single
lon As Single
heure As Single
vitesse As Single
route As Single
historique_vitesse(60) As Single
End Type
J'aimerais qu'une "méthode" soit adjointe à ce point pour calculer la distance de celui-ci à un autre point. Mais malgré de nombreuses recherches sur le net, je ne trouve pas comment faire en VBA (j'ai trouvé comment faire en VB.net dans le cours de Mr Lasserre). Comment déclarer la méthode ?
j'aimerais arriver ç un truc dans ce genre :
Code:
méhtode PointGPS.Distance(pointA as PointGPS, pointB as PointGPS)
distance = calcul compliqué sur les latitudes et longitudes de pointA et pointB
end méthode
et dont l'utilisation serait le calcul automatique de l'attribut PointGPS.Distance
quelqu'un peut-il m'aider ? Ou au moins me confirmer que je n'ai pas l'air tout à fait clair ?
Merci beaucoup, beaucoup, beaucoup !
Michel
ps : et parallèlement m'indiquer un cours équivalent à celui de Mr Lasserre mais concernant le VBA (Excel) ?
Je crois que tu mélanges un peu les notions d'objet et type personnalisé.
Ces deux notions peuvent être rassemblés dans un module de classe pour constituer la description et les fonctionalités d'un nouvel objet.
Mais avant de s'attaquer à cela il y a des notions de base que tu pourras acquerir ici entre autres. Et en t'essayant sur des organisations moins complexes.
Merci pour ta réponse, je vais étudier le lien proposé.
[edit]
je suis allé visiter le lien mais c'est un peu général et cela ne semble pas répondre à ma question. j'ai utilisé la syntaxe Type parce que c'est la seule que j'ai trouvée.
Dans toutes les lectures que j'ai trouvées, quand on déclare une variable sous la forme :
Dim Toto as object
il me semble que l'on ne peut lui attribuer que des propriétés/fonctions déjà présentes dans VBA non ?
dans VB.net, je programmerais la chose de la manière suivante :
Code:
public class PointGPS
private lat as Single
private lon as Single
private heure as Single
etc...
ReadOnly Property Distance(PointA as PointGPS) as Single
Get
Return Distance = sqrt(pointA.lat*pointA.lat+pointA.lon*pointA.lon)
End Get
End Property
End Class
comment puis-je faire la même chose dans VBA ? ou l'équivalent si c'est possible ?
- Navigue sans publicité - Accède à Cléa, notre assistante IA experte Excel... et pas que... - Profite de fonctionnalités exclusives Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel. Je deviens Supporter XLD