IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

lancer macro sur selection cellule


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Octobre 2010
    Messages
    240
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aisne (Picardie)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2010
    Messages : 240
    Par défaut lancer macro sur selection cellule
    Bonjour

    Comme le titre l'indique, je cherche a lancer une macro lorsque qu'une cellule est sélectionnée.

    Dans quel but?
    En gros, j'ai une cellule avec un nombre dedans et quand je clique dessus, elle met la valeur +1

    Pour se faire, je compte uiliser la fonction application.caller mais reste a savoir s'il est possible de faire la premiere etape.

    Merci pour votre aide

  2. #2
    Expert confirmé Avatar de jfontaine
    Homme Profil pro
    Contrôleur de Gestion
    Inscrit en
    Juin 2006
    Messages
    4 756
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Contrôleur de Gestion

    Informations forums :
    Inscription : Juin 2006
    Messages : 4 756
    Par défaut
    Bonjour,

    Tu peux utiliser l'évenement Worksheet_SelectionChange
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
        'Ajoute 1 à la valeur de la cellule
        Target.Value = Target.Value + 1
    End Sub

  3. #3
    Membre éclairé
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Octobre 2010
    Messages
    240
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aisne (Picardie)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2010
    Messages : 240
    Par défaut
    Je te remercie tout d'abord pour ta réponse

    Mais malheureusement avec cette méthode les cliques deviennent ingérable.

    en gros j'aimerai affecter une macro a une cellule de la même façon que je peux affecter une macro a un contrôle. ^^

  4. #4
    Expert confirmé Avatar de jfontaine
    Homme Profil pro
    Contrôleur de Gestion
    Inscrit en
    Juin 2006
    Messages
    4 756
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Contrôleur de Gestion

    Informations forums :
    Inscription : Juin 2006
    Messages : 4 756
    Par défaut
    Ce code était un exemple. Pour que ca fonctionne que sur une seule cellule, il faut tester quelle cellule a été sélectionné.

    par exemple si on faire ce traitement uniquement sur B5
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
        'Ajoute 1 à la valeur de la cellule
        if Target.Address = "$B$5" then Target.Value = Target.Value + 1
    End Sub

  5. #5
    Membre éclairé
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Octobre 2010
    Messages
    240
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aisne (Picardie)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2010
    Messages : 240
    Par défaut
    le probleme c'est que c'est sur plusieurs cellules mais pas toutes

    et j'en ai trop pour les faire un par un ^^

    donc voila que je voulais passer par un application.caller ou un truc dans le genre et je crée les cellule que je souhaite avec la macro affecté dessus

  6. #6
    Expert confirmé Avatar de jfontaine
    Homme Profil pro
    Contrôleur de Gestion
    Inscrit en
    Juin 2006
    Messages
    4 756
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Contrôleur de Gestion

    Informations forums :
    Inscription : Juin 2006
    Messages : 4 756
    Par défaut
    Dans ce cas, tu peux utiliser l'évenement ci dessous. Même principe sauf qu'en plus tu test la feuille

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
     
    End Sub

Discussions similaires

  1. [WD-2007] Lancer macro sur événement modification de cellule tableau Word
    Par nonohzx dans le forum VBA Word
    Réponses: 1
    Dernier message: 19/02/2014, 10h21
  2. lancer une macro sur une cellule ou sur du texte
    Par xadep dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 02/09/2009, 17h50
  3. [E-07] Macro sur clic cellule
    Par stysa dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 07/11/2008, 08h24
  4. executer la macro sur la cellule Active
    Par k-eisti dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 25/04/2007, 12h51
  5. [VBA-E] Comment appliquer une macro sur plusieurs cellules
    Par jeanpierreco dans le forum Macros et VBA Excel
    Réponses: 16
    Dernier message: 25/01/2007, 10h54

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo