SOS: Mon code désactive le menu coller et c'est pas volontaire...
micmerle
Messages postés32Date d'inscriptionmercredi 24 mars 2004StatutMembreDernière intervention 3 août 2006
-
10 janv. 2006 à 16:58
micmerle
Messages postés32Date d'inscriptionmercredi 24 mars 2004StatutMembreDernière intervention 3 août 2006
-
12 janv. 2006 à 09:58
Bonjour,
J'ai un code qui désactive le menu coller et coller spécial dans XL. Il est tjs possible de faire un "coller" en faisant afficher les élément déjà copiés mais les menus "coller" et "coller spécial" sont désactivés dans le menu édit et le menu déroulant lorsqu'on clique droit sur une cellule.Ctrl+V est aussi KO.
Merci pour votre aide,
Michael
La procédure ci-dessous est appelée à chaque Worksheet_SelectionChange
Sub CodePasBon (ByRef rng As Range)
TestMarket.CmdStartSelectedAutomatons.Enabled = True (c'est un commandButton sur la feuille qui a recu le selectionChange event)
End Sub
ScSami
Messages postés1488Date d'inscriptionmercredi 5 février 2003StatutMembreDernière intervention 3 décembre 200724 10 janv. 2006 à 20:20
Comme ça on peut pas vraiment t'aider !!! Il faut nous en dire plus :
TestMarket c'est quoi ?
Es-tu certain de l'orthographe de "CmdStartSelectedAutomatons" (manquerait pas un "i" par hasard" ???) ???
Est-ce que le fait de l'activer est succeptible, selon le reste de ton code, de déclancher une procédure événementielle quelconque ???
Parce qu'entre nous, si Coller, Coller spécial et CTRL+V (Shift + Inser entre nous, c'est quand même mieux!!!) sont désactivés, c'est tout simplement parce qu'il n'y a rien à coller !!!
Enjoy
<hr size="2" width="100%">
( Si une réponse vous convient, cliquez sur le bouton "Réponse acceptée". )
micmerle
Messages postés32Date d'inscriptionmercredi 24 mars 2004StatutMembreDernière intervention 3 août 2006 11 janv. 2006 à 10:15
Bonjour,
Sympa de ta part. En fait, TestMarket c'est le nom de la feuille (Sheet) où il y a un command button (CmdStartSelectedAutomatons). Oublie l'orthographe: c'est comme ca qu'on appelle ca en interne. Je vais qd mm essayer de changer le nom pour voir.
Sinon non, a priori ca ne lance rien à part le changement d'apparence (disabled) qui est géré directement par XL.
Sinon, si, il y a à coller. Je peux faire copier sur cette feuille et coller sur une autre... et surtout, je vois ce que je copie dans le "office clipBoard" (presse papier)
Je ne connaissais pas le Shift+inser mais il est aussi désactivé...
Je joins le code sur la feuille "TestMarket":
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
ScSami
Messages postés1488Date d'inscriptionmercredi 5 février 2003StatutMembreDernière intervention 3 décembre 200724 11 janv. 2006 à 14:14
Wai... Il faut savoir que le past ne prend que ce qu'il y a dans le clipboard de Windows. Du coup, si tu n'as pas accès à ces commandes, c'est que le presse-papiers de Windows et vide, tout simplement !!!
Or, tu me dis que le presse-papiers de Excel, lui, ne l'est pas. Donc, il faut regarder de ce coté! Comment accéder au presse-papier de Excel, tel est la question ???
Moi, je ne sais pas. C'est un objet, ça, c'est sûr. Reste à trouver son nom. Moi je te conseille de commencer à chercher dans l'aide via le mot "clipboard" !!!
Mais sur ce coup là, je suis désolé mais je ne peux pas t'aider...
Mais il est impossible que la simple activation d'un bouton engendre un tel problème!!!
Je te conseillerais donc de bien vérifier ton code. De désactiver cette ligne (en la mettant en commentaire en ajoutant une apostrophe en début de ligne), de teste. Si tout fonctionne, c'est que cette ligne est soit fausse syntaxiquement, soit qu'elle déclanche une procédure événementielle quelconque (que je ne peux deviner sans ton code!!!).
Mais as-tu essayé de faire plutôt :
Sheets("TestMarket").Cmdtrucbidule.Enable = True
???
Enjoy
<hr size="2" width="100%">
( Si une réponse vous convient, cliquez sur le bouton "Réponse acceptée". )
micmerle
Messages postés32Date d'inscriptionmercredi 24 mars 2004StatutMembreDernière intervention 3 août 2006 11 janv. 2006 à 17:56
Merci encore pour ton attention!
Non, non tu as tout le code!!!!: Si tu veux je peux t'envoyer une feuille de test par mail. Mais c'est vraiment court:
1/ Sur une feuille, tu mets un commandButton du bon nom (CmdStartSelectedAutomatons) et dans le code VBA de la feuille:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
CodePasBon Target
End Sub
2/ Et tu crées la procédure CodePasBon qque part.
Sub CodePasBon (ByRef rng As Range)
Sheet1(ou nom de la sheet).CmdStartSelectedAutomatons.Enabled = True
End Sub
Et joue avec: effectivement si tu mets la ligne du commandButton en commentaire, tout remarche... Mais c'est justement my prob...(
En fait je voulais activer/désactiver un bouton selon les cellules sélectionnées.)
Si tu n'observes rien, vérifie que Application.enableEvents=true
Je regarde pour le clipBoard mais en tout cas, je le vois se remplir quand je l'affiche dans l'application Edit/Office CilpBoard.
J'ai qd mm bien l'impression que d'une manière ou d'une autre il refuse le paste car il a qque peu sélectionné le bouton? (j'ai essayé de voir le focus en mettant un gotFocus sur le bouton mais non...)
Ou alors, il considère comme tu le dis que changer un commandButton peut potentiellement déclencher autre chose. And so what?
Bonne soirée,
Michael
PS: j'ai essayé le worksheets(...) sans résultat... Changer le nom du button aussi ...
Vous n’avez pas trouvé la réponse que vous recherchez ?
micmerle
Messages postés32Date d'inscriptionmercredi 24 mars 2004StatutMembreDernière intervention 3 août 2006 12 janv. 2006 à 09:58
Ouah!
C'est bcp, bcp mieux merci ctac!!!
Juste un petit détail (mais suis déjà bien soulagé): le paste spécial ne marche pas bien (c'est pas l'interface XL).
Encore merci,
Michael