RECUPERER UN CONTROL "Ctrl + C"

Résolu
Bonjour,
est-il possible de savoir si on a utiliser "Ctrl + C" dans une macro excel et recuperer son code.
merci de votre reponse
Configuration: Windows XP Internet Explorer 6.0

8 réponses

  1. desolé j'ai pas fait attention
    0
    1. c'est tres simple
      1- il tu suffit de donner le racourci CTRL+C a votre macro
      comme ca quand tu clicke sur CTRL+c la procedure se declanche automatiquement
      0
      1. Modérateur
        Salut,
        Oui c'est ce qu'explique Eriiic depuis le le mercredi 19 août 2009 à 11:24:35 post 6...
        0
    2. Contributeur
      Bon hé !!!! tu fais un effort de lecture stp :
      il suffit de donner un raccourci à ta macro.
      'outils / macro / macros...' puis bouton options...
      0
      1. Contributeur
        Ben je ne vois pas trop l'interet d'interdire le copier mais tu n'as qu'à faire une macro vide ou avec un msgbox ayant ce raccourci...
        0
        1. je ne veux pas interdire le "Ctrl+c" mais plus tôt capter l'evenement pour l'exploiter à autre chose.
          en general y a t il un moyen de capter n'importe quel evenement et avoir son code.
          merci
          0
      2. Modérateur
        Salut,
        Si j'ai bien compris ce qu'il veux c'est interdire de faire CTRL + C dans son classeur. Peut être pas l'interdire, mais capter l'évènement (lorsque l'utilisateur tape CTRL + C) et lancer une procédure immédiatement. Du style lorsque l'utilisateur tape CTRL + C une msgbox se lance... Enfin si j'ai bien saisit...
        0
        1. c'est exactement ça
          0
      3. Contributeur
        Bonjour,

        il suffit de donner un raccourci à ta macro.
        'outils / macro / macros...' puis bouton options...

        Mais il est formellement déconseillé d'utiliser les raccourcis claviers usuels
        Laisse-les fonctionnels pour les utilisateurs.

        Et je ne vois pas le rapport avec "comment pourrais-je faire en cliquant sur "Ctrl+C" pour annuler une action dans une macro"
        Déjà pour annuler une action c'est ctrl+z, ctrl+c c'est copier.
        D'autre part tu ne peux pas annuler une action faite par macro. C'est à toi de sauvegarder les valeurs avant, et de les restaurer si besoin.

        eric
        1
        1. Bonjour et merci pour ta reponse,

          je vais essayer de t'expliquer ce que je veux exactement et tu me dira si c'est faisable.

          voila mon code :

          Private Sub Worksheet_SelectionChange(ByVal Target As Range)
          If RAZ_FEUILLE Then Exit Sub
          Ligne_En_cours = Selection.Row
          Colonne_En_cours = Selection.Column
          Dim lInd, cInd
          lInd = Ligne_En_cours
          cInd = Colonne_En_cours

          If "Ctrl+c" pas enfoncé Then
          If cInd = 1 And Cells(lInd, 1) = "" And Ligne_En_cours > 4 Then
          Cells(lInd, 1) = "TBS_"
          End If
          End If

          End Sub

          en fait je veux quand je click sur "Ctrl+c", je ne veux executer pas cette condition :

          If cInd = 1 And Cells(lInd, 1) = "" And Ligne_En_cours > 4 Then
          Cells(lInd, 1) = "TBS_"
          End If

          c'est pourquoi je veux recuperer le code ou l'adresse de l'evenement "Ctrl+c"

          merci
          0
      4. il faut tester sur copier puisque le CTRL+ C signifier copier
        0
        1. Bonjour,
          comment je peux capter l'evenement "Ctrl+C" c'est à dire si quelqu'un fait Ctrl+C j'affiche un message
          merci de votre aide
          0
        2. @bfiguigRe-bonjour à tous,
          je vais essayer d'être un peu plus clair :

          comment pourrais-je faire en cliquant sur "Ctrl+C" pour annuler une action dans une macro.
          donc si j'arrive à recuperer l'adresse (le code d'evenement) de "Ctrl+C", ça sera bon pour moi.

          merci à vous tous
          0
        3. @bfiguigBonjour,
          voila, j'ai trouvé comment capter un evenement par exemple si on appui sur "TAB" j'excute une procedure et le code que j'utilise dans la macro est le suivant : Application.OnKey Key:="{TAB}", procedure:="MaProc"
          mais moi je veux executer une procedure lorsque j'appui sur "Ctrl+C" et le code est le suivant :
          Application.OnKey Key:="^C", procedure:="MaProc"

          mais il ne se passe rien.

          j'ai fais même des test avec la touche "ENTRER" et ça marche : Application.OnKey Key:="{ENTRER}", procedure:="MaProc"

          je ne sais pas pourquoi ça ne marche pas avec "Ctrl+C"

          merci de votre aide
          0
      5. RE-bonjour,
        peut-on savoir d'una facon ou d'une autre qu'on a cliqué sur "Crtl + C" dans un fichier exce (macro) ??
        merci
        0