01net    Web


Actuellement en ligne : 138 Utilisateurs dont 17 dans Windows & logiciels >S'inscrire      >S'identifier      >Recherche      >Aide  
modéré par azerty39, A.Ouloube, Zplay, zippo25, totoftotof, cedvet  
01net > Forum de 01net > Windows & logiciels > bureautique
> Excel VBA - Selectionchange VS BeforeRightClick
Passionné(e) d'internet, de logiciels, de forums ? 01net recrute...
Auteur
Message
 
<     1       >
peyro
  même pas peur!
  :-)
      ?   @     Posté le 13/05/2008 17:28:07  
Voter pour ce message
Bonjour,
je bidouille un peu la sur Excel ( 07 - en anglais).
J'utilise les deux procédures "before_rightClick" et "selectionchange" de ma feuille de calcul.
J'aimerai savoir s'il est possible de donner la priorité a la deuxieme.
Lorsque l'utilisateur clique sur une case, il se passe une Action A, et je voudrais une action B lorsqu'il effectue un clic droit. Le probleme etant que
Excel lance la procédure "selectionchange" et donc l'action A avant la "before_rightclick"...
:??:


merci :jap:
-------
they peed on my rug!
michel_m
  
   
      ?   @     Posté le 13/05/2008 18:58:26  
Voter pour ce message

Et tu ne fais confiance aux forumeurs d'Excel-downloads où tu as déjà posé ta question ?
-------
Amicalement
Michel
peyro
  même pas peur!
  :-)
      ?   @     Posté le 13/05/2008 19:55:59  
Voter pour ce message
ben je suis plutot habitué a ce forum donc j'ai posé le message ici avant... pas de bol
-------
they peed on my rug!
Gorfael
  
  :-)
      ?   @     Posté le 14/05/2008 15:46:40  
Voter pour ce message
peyro a écrit :
ben je suis plutot habitué a ce forum donc j'ai posé le message ici avant... pas de bol
Salut
Malheureusement, je pense que ton problème ne peut avoir de solution simple : les priorités de lancement des macros automatiques sont gérées par Excel et sont donc figées
Le problème est que la sélection peut être sans clic-droit, ou avec.
Donc, il faudrait pouvoir tester l'affichage de la CommandBars("Cell"), mais... VBA retourne toujours FAUX la proprièté visible de celle-ci, même quand elle est affichée.

Reste plus qu'à lancer un chrono lors de la sélection, qui lancera le traitement que devrait effectuer Selection_Change, mais seulement après un certain laps de temps, pendant lequel l'autre macro agira.
Je ne suis pas pour : lla fonction Ontime intervient sur Windows.
Mais, c'est pas à moi de prendre la décision :S
Dans le module de classe (lié à la feuille)
Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
Cancel = True
On Error Resume Next
Application.OnTime EarliestTime:=TimeValue("00:00:00"), _
Procedure:="Test", Schedule:=False
On Error GoTo 0
[B1] = [B1] + 1
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim X As Date
X = TimeValue("00:00:01") / 5
Application.OnTime Now + X, "Test"
End Sub
Dans un module général
Sub Test()
[A1]=[A1]+1
end sub
L'incrémentation de A1 et B1 représentant le code à effectuer.
Il est évident que les propriétés SELECT et ACTIVATE doivent impérativement êtreINTERDITES dans les macros sous peine d'interférences ingérables, ou d'utiliser le blocage des évènements (avec gestion des erreurs obligatoires).

Bien que celà fonctionne, ça ne me satisfait pas, puisque je suis obligé d'effacer une erreur au lieu de la traiter.
Je n'ai pas non plus essayé de passer plusieurs sélection rapidement pour voir ce que ça fait

Mais si tu donnais ton code, on pourrait peut-être te proposer une meilleure solution.

Je travaille aussi sur le forum cité par michel_m (et d'autres)
A+
Edit : j'ai raccourci le temps de latence du au chrono avant le traitement de test
Dis m'sieur 01.net, tu pourrais pas la faire plus grande ta fenêtre d'édition ? :lol:



-->Message édité par Gorfael le 14/05/2008 16:00:02<--
peyro
  même pas peur!
  :-)
      ?   @     Posté le 15/05/2008 12:44:27  
Voter pour ce message
ben merci bien encore une fois. J'avais commencer a regarder un truc du genre, mais je galere un peu encore. Je te tiens au courant de la suite
merci
-------
they peed on my rug!
<     1       >

01net > Forum de 01net > Windows & logiciels > bureautique
> Excel VBA - Selectionchange VS BeforeRightClick

Aller à :

Page générée en : 0.399s - X2board 2.2

Nous contacter | Charte de confiance | Voir notice légale

Tous droits réservés © 1999 - 2008 Groupe Tests - 01net.


Sites du réseau 01net Network : 01net - 01men - Rmc.fr - Bfmtv.fr - Radiobfm.com - TousLesPodcasts - Micro Achat - Caractere.net -
Electronique.biz - Mesures.com - Transaction.fr

Antivirus
Restez protégé contre les cyber-menaces pendant que vous travaillez, surfez ou jouez.
Jeux
Nouveauté : Serez-vous capable de trouver tous les objets cachés et de décrocher le gros lot ?