bug sur code vba

archi

XLDnaute Impliqué
Bjr à tous,

j'a un bug dans une macro en voulant rajouter une feuille de calcul "Class"
la macro gére mal la suppression de cellules sur cette feuille !!

ci-joint le fichier concerné
merci pour votre aide précieuse
bye
 

Pièces jointes

  • Progressions Joueurs test.zip
    47.7 KB · Affichages: 25
  • Progressions Joueurs test.zip
    47.7 KB · Affichages: 28
  • Progressions Joueurs test.zip
    47.7 KB · Affichages: 27

jp14

XLDnaute Barbatruc
Re : bug sur code vba

Bonjour

Effectivement la procédure provoque une boucle mortelle.
L'userform doit répondre à trois action :
Suppression
Ajout
Remplacement.
Quelles sont les actions à réaliser dans la base de données pour chacune de ces actions ?


JP
 

archi

XLDnaute Impliqué
Re : bug sur code vba

Bjr JP,
la procédure d'ajout, suppression, remplacement marche nickel concernant les autres feuilles hormis "Class".
c'est au niveau de la suppression et du remplacement que ça coince sur cette feuille !!
les actions sur la feuille "Class" correspond aux actions de la feuille "Brulage"
en faite, j'ai modifié une macro existante !!
bye
 

jp14

XLDnaute Barbatruc
Re : bug sur code vba

Bonjour


Le code
Code:
LigneFin = Sh.Range("C7").End(xlDown).Row
de la procédure "Griser" donne 65536, ce qui allonge le temps de calcul.
Cette valeur est obtenu lorsque C8 est vide.
Il faudrait utiliser ( code pour 2007 et antérieur)
Code:
LigneFin =Sh.Cells(Sh.Rows.Count, 3).End(xlUp).Row

Pour supprimer dans la feuille "Class" il faut modifier la valeur de l'offset ou rajouter une ligne.


JP
 
Dernière édition:

jp14

XLDnaute Barbatruc
Re : bug sur code vba

Bonsoir

merci JP,
tu parles de la valeur en ligne:
Code:
Const OffsetClass      As Byte = 5
???

Effectivement.
Les nom commencent à la ligne 4.

Pour éviter les erreurs suite à la suppression d'un ligne, il faudrait faire une procédure qui recherche les offsets, en cherchant dans la feuille le mot "joueurs" ou "Compétiteurs" et connaissant l'adresse en déduire la ligne suivante.

JP
 

archi

XLDnaute Impliqué
Re : bug sur code vba

ok merci, mais sachant que la procédure marche correctement sur la feuille "Brulage" voir également sur "Perf et contre" pourquoi elle ne fonctionne pas sur "Class" ? aurais je fais une erreur de copie ?
 

jp14

XLDnaute Barbatruc
Re : bug sur code vba

Bonsoir
ok merci, mais sachant que la procédure marche correctement sur la feuille "Brulage" voir également sur "Perf et contre" pourquoi elle ne fonctionne pas sur "Class" ? aurais je fais une erreur de copie ?

La procédure fonctionne avec à condition d'apporter les modifications suivantes dans les procédures respectives.

Code:
Const OffsetClass      As Byte = [COLOR="Red"]4[/COLOR]

LigneFin = Sh.Range([COLOR="Red"]"C1"[/COLOR]).End(xlDown).Row
Pour tester en mode pas à pas il faut rajouter 0 au code suivant
Code:
 UserForm1.Show [COLOR="Red"]0[/COLOR]
cela permet de vérifier chaque feuille.

JP
 

Discussions similaires

Statistiques des forums

Discussions
312 493
Messages
2 088 956
Membres
103 990
dernier inscrit
lamiadebz