VBA : Trucs et astuces dans l'écriture du code

JNP

XLDnaute Barbatruc
Bonjour le forum :),
J'ai effectué une petite recherche sur le forum concernant les us et coutumes pour écrire du code. Je n'ai trouvé qu'un seul fil de 2005 https://www.excel-downloads.com/threads/nomenclature-de-programmation.45033/ (sans doute n'ai-je pas utilisé les bons mots clés...). Ce fil est très intérressant, bien que je doute d'utiliser un jour la notation Hongroise, elle me parait très rébarbative.
Par contre, au fil des fils, j'ai trouvé beaucoups de notations différentes, j'en ai adopté certaines, et me suis creusé pour en comprendre d'autre, mais souvent, la méthode avait son utilité.
Du fait, ce que je vous propose (si vous le voulez bien), c'est de proposer au fil de ce fil vos notations et la raison qui vous fait les utiliser. Je pense que ça peut être enrichissant pour tous, et en même temps nous aider à comprendre le code de chacun.
Enfin, pour la facilité de lecture, je vous propose de penser à chaque fois à changer l'intitulé de vos réponses en fonction de ce que vous nous proposez. Je vais d'ailleur commencer en vous donnant ma première habitude juste après.
Longue vie au forum :cool:
 

JNP

XLDnaute Barbatruc
Variables, feuilles, etc, non orthodoxe mais pratique...

Re :),
Comme je le disais, c'est peu orthodoxe et cela fera frémir certains, mais j'ai pris l'habitude pour tout ce que je nomme (variables, feuilles, sub, etc.) de les nommer en français, sans _ mais avec une majuscule à chaque début de mot (CalculerPaie, JourDeRepos, etc...).
Pire pour les puristes, je met même les accents (SoldeJournée, ImprimerFévrier, etc.) :eek:...
L'avantage que j'en retire, c'est qu'en relisant mon code, j'isole tout de suite mes éléments des éléments de programmation VBA.
L'autre avantage, c'est qu'après avoir nommé ou déclaré un élément, je saisi tous en minuscule, et, à la validation de la ligne, mes majuscules réapparaissent (sinon, c'est que j'ai fait une faute de frappe).
Voilà un début pour cette discussion que j'espère longue et passionnée.
A vous lire :cool:
 

skoobi

XLDnaute Barbatruc
Re : VBA : Trucs et astuces dans l'écriture du code

Bonjour JNP,

ma façon de faire pour les variables ressemble à la tienne, je mets tout en minuscule (pour détecter les mots réservés à VBA) avec par contre le "_".
L'avantage que j'en retire, c'est qu'en relisant mon code, j'isole tout de suite mes éléments des éléments de programmation VBA
Tout à fait!


Je "hiérarchise" mes codes.
C'est-à-dire que lorsque plusieurs instructions sont imbriquées, je m'y retouve également plus vite, exemple:

Code:
Sub toto()
For each ...... in.....
    if ...... then
        .........
    elseif ...... then
        .........
    End If
Next
End Sub
J'essaye de commenter le plus possible les longs codes pour retrouver rapidement (on y revient) ce que je cherche.

Je bannie le ".Select", je pense que tu sais pourquoi.

Bon week-end,

Gilbert :)
 

Staple1600

XLDnaute Barbatruc
Re : VBA : Utilisation Evaluate

Bonsoir JNP, skoobi, Brigitte


Souvent au lieu de:

Range("A1") j'utilise [A1]

ou pour identifier la dernière ligne

[A65536].End(xlUp).Row

J'ai lu que certains déconseillent cette syntaxe

Si quelqu'un a d'autres exemples d'utilisation d'Evaluate

qu'il n'hésite pas à les livrer ici.

EDITION : Ici vous trouverez plus de détails et des exemples d'utilisation
(pas trouvé en français pour le moment) Methode EVALUATE
 
Dernière édition:

Brigitte

XLDnaute Barbatruc
Re : VBA : Utilisation Evaluate

Bonsoir,

Pour ma part, Pierrot93 m'a proposé ceci pour sélectionner (définir une zone d'impression) un tableau jusqu'à la dernière ligne et j'en suis super satisfaite :

Sub ImpressionArchives()
'
' ImpressionArchives Macro
' Macro enregistrée le 30/10/2007 par xxxxxxxxxx
ActiveSheet.PageSetup.PrintArea = Range("A1:S" & _
Range("A65536").End(xlUp).Row).Address
'Range("A1:S2254").Select
'ActiveSheet.PageSetup.PrintArea = "$A$1:$S$2254"
End Sub

Est-ce que cela fait avancer ton schmilblick ? Notre compteur certes, mais le schmilblick moins sûr !!
 

JNP

XLDnaute Barbatruc
Re : VBA : Trucs et astuces dans l'écriture du code

Bonjour à tous et merci de vos réponses :),
Non, Brigitte, le schmimblick n'est pas vert, c'est pas la peine d"appeler M. Moulineau... :D Mais j'essaierai pour la zone d'impression, la dernière fois que j'ai été ennuyé avec celà, je suis passé par une conversion LC en A1...
Tu vois, je viens d'apprendre un truc grâce à Stapple, et même si ce n'est pas conventionnel, je pense que je ne mettrai pas longtemps à utiliser les crochets... par contre, Evaluate, faut que je creuse... J'ai pas tout suivi :eek:
Et pour Skoobi, j'avais déjà remarqué que l'on se rencontrait souvent, du fait, c'est assez logique que l'on soit dans le même sens.
Voilà, bon WE et n'hésitez pas à continuer de donner des trucs, je suis toujours preneur :cool:
 
Dernière édition:

myDearFriend!

XLDnaute Barbatruc
Re : VBA : Trucs et astuces dans l'écriture du code

Bonsoir JNP, skoobi, Staple1600, Brigitte, le Forum,

Pour ma part, j'aurais du mal à citer mes habitudes quand je développe en VBA car d'une part, elles sont nombreuses et d'autres parts, elles peuvent s'adapter à tel ou tel cas de figure et n'ont pas forcément la rigueur à laquelle chacun peut s'attendre (d'ailleurs je rejoins un peu ce que dit Robert dans le fil que tu cites JNP).

Ceci dit, mes habitudes de travail peuvent différer de ce que je présente dans le présent forum ou ailleurs, pour la simple raison que je m'adresse à d'autres souhaitant apprendre VBA. Rendre mon code le plus clair et le plus académique possible est la moindre des choses quand je m'adresse à celui qui apprend.

J'en profite d'ailleurs pour faire cette remarque : si tous les intervenants faisaient l'effort de déclarer leurs variables dans les codes qu'ils présentent ici, ce serait déjà un grand pas vers LA vraie démarche qui nous anime, à savoir : aider le débutant.

Cordialement,
 

MJ13

XLDnaute Barbatruc
Re : VBA : Trucs et astuces dans l'écriture du code

Bonjour à tous.

Pour moi, quelque soit sa façon d'utiliser du code écrit par l'enregistreur de macros ou d'écrire du code suivant son expérience, le principal c'est que cela fonctionne.
Ensuite il faut bien penser à définir ses variables qui seront utiles dans les différents modules et savoir faire du debogage avce un petit stop dans le code avec F8 et Ctrl + Shift+F8.
 

skoobi

XLDnaute Barbatruc
Re : VBA : Trucs et astuces dans l'écriture du code

Et pour Skoobi, j'avais déjà remarqué que l'on se rencontrait souvent, du fait, c'est assez logique que l'on soit dans le même sens.

Re bonsoir tout le mode,

JNP, je vois une autre logique au fait que l'on se croise de temps en temps, ton avatar, la cigogne, un des symboles de l'Alsace :D.
 

JNP

XLDnaute Barbatruc
Re : VBA : Trucs et astuces dans l'écriture du code

Re le forum :),
JNP, je vois une autre logique au fait que l'on se croise de temps en temps, ton avatar, la cigogne, un des symboles de l'Alsace :D.
Désolé de te décevoir, mais mon avatar fait surtout référence à Anne Geddes, photographe qui fait des photos magnifiques de bébés, ce qui procure beaucoup de douceur dans ce monde de brute...
Designer baby clothes and baby pictures by Anne Geddes
Mais bon, je suis lorrain, ce qui fait que l'on est quand même voisin :p.
Bonne soirée :cool:
 

Statistiques des forums

Discussions
312 672
Messages
2 090 769
Membres
104 661
dernier inscrit
abdelazizasma