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. 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. 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
  2. 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
    1. il faut tester sur copier puisque le CTRL+ C signifier copier
      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
      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
      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
    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...
      1. c'est exactement ça
    3. 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...
      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
    4. Contributeur
      Bon hé !!!! tu fais un effort de lecture stp :
      il suffit de donner un raccourci à ta macro.
      'outils / macro / macros...' puis bouton options...
      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
        1. Modérateur
          Salut,
          Oui c'est ce qu'explique Eriiic depuis le le mercredi 19 août 2009 à 11:24:35 post 6...