Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Microsoft 365 ne pas répéter le code feuille (tout ou partie) à l'activation de la feuille si elle a déjà été activée

Usine à gaz

XLDnaute Barbatruc
Bonjour à toutes et à tous,

Toujours pour gagner du temps, je me pose une nouvelle question :
Toutes les feuilles de mon classeurs contiennent des codes à exécuter quand je les sélectionne.
Bien sûr ça prends toujours une peu de temps mais répété des dizaines, voir des centaines de fois dans la journée,
ça devient un temps total important.

Je me demande s'il est possible de "ne pas exécuter" un code de la feuille que l'on sélectionne si la feuille a déjà été activée ?
Par exemple, j'adapte toutes les feuilles à la taille de l'écran sur lequel le fichier est ouvert :
VB:
ActiveWindow.DisplayHorizontalScrollBar = True
ActiveWindow.DisplayVerticalScrollBar = True
Application.MoveAfterReturn = True
Application.ScreenUpdating = False
Application.EnableEvents = False
ActiveWindow.DisplayHeadings = False
Range(Cells(1, 26), Cells(1, 1)).Select
ActiveWindow.Zoom = True

Serait-il possible de ne l'exécuter qu'à la première activation de la feuille ? (uniquement ce code - pas tout le code de la feuille)
LOL - En voilà une question "qu'elle" pourrait être bonne

Encore une fois "Merci" à vous
Bon WE,
Amicalement,
lionel,
 

mapomme

XLDnaute Barbatruc
Supporter XLD
Bonjour @arthour973,

Voir le code du module de la feuille "Feuil2":
VB:
Private Sub Worksheet_Activate()
Static DeuxFoisEtplus As Boolean

   If Not DeuxFoisEtplus Then
      'ici le code pour la première fois
      MsgBox "C'est la première fois qu'on active " & Me.Name
      DeuxFoisEtplus = True
   Else
      'ici le code pour la deuxième fois et plus
      MsgBox "C'est la deuxième fois ou plus qu'on active " & Me.Name
   End If
End Sub
 

Pièces jointes

  • arthour973- code activation feuille (1ère fois)- v1.xlsm
    14.5 KB · Affichages: 6

job75

XLDnaute Barbatruc
Bonsoir Lionel,
Bien sûr ça prends toujours une peu de temps mais répété des dizaines, voir des centaines de fois dans la journée,
ça devient un temps total important.
Non, le code que tu nous indiques s'exécute chez moi en 3 millièmes de seconde, c'est peanuts.

Par contre tu dois t'interroger sur l'utilité de certaines commandes et supprimer le code si elles sont inutiles.

Edit : salut mapomme.

A+
 
Dernière édition:

Usine à gaz

XLDnaute Barbatruc
Bonjour Mapomme,
Super ton code Merci

Bonjour Gérard
Parfaitement d'accord : c'est le "B....." mon "usine à gaz"
D'allieurs, c'est pour ça que ton code de recherche ne fonctionne pas dans mon fichier et je n'ai pas encore trouvé d'où ça vient
@+
lionel,
 
Dernière édition:

patricktoulon

XLDnaute Barbatruc
re
Bonsoir @arthour973 et le fil

vu le code que tu propose

le problème avec les codes qui modifient l'application du genre des displaybar(etc...) il doivent être exécutés a chaque fois que la(les) feuille(s) concernée(s) est(sont) activée(s), sinon ca n'a absolument aucun sens autant l'executer a l'open pour toutes les feuilles
A mediter
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…