Simplification code

Bonjour,

J'ai plusieurs feuilles: Accueil, Machine 1, 2 & 3, Archives 1, 2 & 3. J'ai beaucoup de code et quelques objets (checkboxes, boutons) et je commence a voir les premiers ralentissements. Je m'y attendais car je suis pas assez renseigné sur la façon dont le code et les objets prennent de la mémoire (je compte le faire mais actuellement je n'ai pas trop le temps). Je dois simplifier le code, pour 3 machines en 1.

J'ai commencé une partie du code en changeant la case A1 de la feuille Accueil en fonction de quel machine je veux appeler. J'ai donc 1, 2 ou 3 qui va apparaitre, dans mes codes j'ai :

N = acc.Range("A1").Value    'acc = accueil
Set cc = Sheets("Archive" & N)    'cc = Archive

Ca fonctionne nickel et c'est simple, plus qu'à continuer, cependant mes feuilles machines contiennent des fonctions qui s'activent une fois la case changée

Sub Worksheet_Change(ByVal Target As Range)
i = Target.Row
j = Target.Column
If i = 1 And j = 2 Then
    ...

Est-il possible de continuer avec ce genre de fonction dans ThisWorkBook où la page d'accueil par exemple. Sinon y a-t-il moyen d'utiliser quelquechose de similaire ?

Je ne peux pas vous envoyer mon tableau, il est assez rempli et j'ai plusieurs données dessus.

Merci

Bonjour,

Votre demande est cloturée ou pas ? Sinon comment voulez vous que l'on vous aide sans un fichier

Mettez votre fichier simplifié sans données confidentielles, ce sera plus facile

Cordialement

Bonjour,

Désolé, j'ai fini par trouver une solution, j'ai réussi à simplifier plusieurs parties du code et je me suis rendu compte en faisant du pas à pas que mes calculs appelaient à chaque fois Sub Worksheet_Change. J'ai enlevé ce sub et j'ai rajouté ça sur certaines parties du code pour aller plus vite (par contre j'ai noté qu'il faut réactiver les animations pour mieux voir d'ou vient un bug.

With Application
    .ScreenUpdating = False
    .DisplayStatusBar = False
End With

Merci

Rechercher des sujets similaires à "simplification code"