Question de structure et synthaxe : bonne pratique ?
Jojos54
Messages postés
15
Statut
Membre
-
f894009 Messages postés 17417 Date d'inscription Statut Membre Dernière intervention -
f894009 Messages postés 17417 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je travaille depuis un moment sur un tableau où j'effectue pas mal d'opération sur des valeurs dans les colonnes de ce tableau. Aujourd'hui, je me rends compte qu'avec toutes les évolutions que subit ce tableau, j'ai du mal à ajuster mes codes pour que l'ensemble de mes maccros marche (des modifications telles que la mise en place de nouvelles colonnes, le déplacement de colonnes etc...)
Du coup avec mes maccros du type : .sheets("feuil1").cells(5,i)=userform1.controls("textbox7"), je suis obligé de tout revérifier afin d'être sûr que les bonnes données vont au bon endroit. Sur un code qui commence à faire plus de 50 pages cela commence à être fastidieux sans compter les erreurs possibles.
Bien que ces changements n'ai pas lieu tous les 4 matins le simple fait que ce soit 3 fois par an m'oblige a revalider chaque ligne de code ce qui fini par prendre un temps assez phenomenale. Ainsi, je suis à la recherche d'idée pour gérer ce "problème" d'updates
Mon idée principale, actuellement, serait de créer un petit tableau avec les noms de colonne, l'indice de colonne et à chaque démarrage fichier contrôler que tout est en ordre et via des msgbox identifier les colonnes qui aurait pu bouger cependant j'ai peur que ce soit fastidieux et que ça ralentisse considérablement le fichier.
Si vous avez des idées, je suis preneur, j'espère avoir été clair.
Merci de votre support !
Je travaille depuis un moment sur un tableau où j'effectue pas mal d'opération sur des valeurs dans les colonnes de ce tableau. Aujourd'hui, je me rends compte qu'avec toutes les évolutions que subit ce tableau, j'ai du mal à ajuster mes codes pour que l'ensemble de mes maccros marche (des modifications telles que la mise en place de nouvelles colonnes, le déplacement de colonnes etc...)
Du coup avec mes maccros du type : .sheets("feuil1").cells(5,i)=userform1.controls("textbox7"), je suis obligé de tout revérifier afin d'être sûr que les bonnes données vont au bon endroit. Sur un code qui commence à faire plus de 50 pages cela commence à être fastidieux sans compter les erreurs possibles.
Bien que ces changements n'ai pas lieu tous les 4 matins le simple fait que ce soit 3 fois par an m'oblige a revalider chaque ligne de code ce qui fini par prendre un temps assez phenomenale. Ainsi, je suis à la recherche d'idée pour gérer ce "problème" d'updates
Mon idée principale, actuellement, serait de créer un petit tableau avec les noms de colonne, l'indice de colonne et à chaque démarrage fichier contrôler que tout est en ordre et via des msgbox identifier les colonnes qui aurait pu bouger cependant j'ai peur que ce soit fastidieux et que ça ralentisse considérablement le fichier.
Si vous avez des idées, je suis preneur, j'espère avoir été clair.
Merci de votre support !
1 réponse
-
Bonjour,
Quand un document, excel ou autre, est sujet a etre modifie comme vous le citer, vous devez passer par une mise en variables du numero de colonne par rapport a son entete a chaque ouverture ou changement d'onglet pour refaire le tour des emplacement des dits colonnes ex pour un onglet:
'Modifier les lignes de code si ajout(s) ou suppression(s) Set MFS = Worksheets("feuil1") dercol = MFS.Cells.Find("*", , , , xlByColumns, xlPrevious).Column For Colonne = 1 To dercol If MFS.Cells(1, Colonne) = "Entete 1" Then Col_1 = Colonne ElseIf MFS.Cells(1, Colonne) = "Entete 2" Then Col_2 = Colonne ElseIf MFS.Cells(1, Colonne) = "Entete 3" Then Col_3 = Colonne ElseIf MFS.Cells(1, Colonne) = "Entete 4" Then Col_4 = Colonne ElseIf MFS.Cells(1, Colonne) = "Entete 5" Then Col_5 = Colonne Else End If Next Colonne
afin d'utiliser le bon numero de colonne