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 :

Affecter une macro à une cellule [XL-2007]


Sujet :

Macros et VBA Excel

  1. #1
    Membre averti
    Inscrit en
    Décembre 2013
    Messages
    11
    Détails du profil
    Informations forums :
    Inscription : Décembre 2013
    Messages : 11
    Par défaut Affecter une macro à une cellule
    Bonjour

    Voila je voudrai affecter une macro insertion de ligne à une cellule pour donner une certaine à cette dernière.
    L'idéal serai que la macro insertion de ligne se déclenche quand je clic sur une cellule.

  2. #2
    Expert éminent Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Par défaut
    Voila je voudrai affecter une macro insertion de ligne à une cellule pour donner une certaine à cette dernière.
    Il manque quelque chose.

    L'idéal serai que la macro insertion de ligne se déclenche quand je clic sur une cellule.
    Quelle cellule à sélectionner (cliquer) et où la ligne sera insérée?

  3. #3
    Membre Expert
    Avatar de Igloobel
    Homme Profil pro
    Développeur ERP - VBA et Formateur bureautique
    Inscrit en
    Septembre 2005
    Messages
    1 871
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Développeur ERP - VBA et Formateur bureautique
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 871
    Billets dans le blog
    1
    Par défaut
    Salut,

    d'après ce que je comprend tu as besoin de faire une macro événement sur ta feuille du genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
        MsgBox "changement"
    End Sub
    A la place du Msgbox tu crée ton insertion de ligne et tu recupères l'adresse de ta cellule par le Target

    Voilà

    Tu dis si cela te convient ou pas

    @+

  4. #4
    Membre averti
    Inscrit en
    Décembre 2013
    Messages
    11
    Détails du profil
    Informations forums :
    Inscription : Décembre 2013
    Messages : 11
    Par défaut
    Dsl la fatigue se faisait sentir ...

    Concrètement je voudrai que quand je clic sur ''D6'' sa déclenche ma macro qui insert une ligne en 9.

  5. #5
    Expert éminent
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Par défaut
    Bonjour,

    pour le code de l'insertion de ligne, tu peux le faire directement en utilisant l'Enregistreur de macros ! …

    Ensuite dans le module de classe de la feuille, tu copies le code dans l'évènement

    Worksheet_SelectionChange en y testant Target.Address

    __________________________________________________________________________________________

    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion …

  6. #6
    Membre averti
    Inscrit en
    Décembre 2013
    Messages
    11
    Détails du profil
    Informations forums :
    Inscription : Décembre 2013
    Messages : 11
    Par défaut
    Sa fait que peut de temps que j'ai commencer à toucher au macro alors j'ai du mal à me faire au evenementielles

  7. #7
    Expert éminent
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Par défaut

    Pas grave ! Montre - nous au moins ton code pour l'insertion de ligne ! …

  8. #8
    Membre averti
    Inscrit en
    Décembre 2013
    Messages
    11
    Détails du profil
    Informations forums :
    Inscription : Décembre 2013
    Messages : 11
    Par défaut
    Pour l'insertion c'est bon mais c quoi le module de classe de la feuille

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Rows("9:9").Select
        Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
        Range("Q8").Select
        Selection.AutoFill Destination:=Range("Q8:Q9"), Type:=xlFillDefault
        Range("A1").Select

  9. #9
    Expert éminent
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Par défaut
    Merci de mettre la prochaine fois le code entre balises via l'icône # dédiée !

    Code à insérer dans le module de la feuille (via un double clic sur la feuille dans l'environnement VBA) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
        If Target.Address = "$D$6" Then
            Application.EnableEvents = False
            Rows(9).Insert
            [Q8].AutoFill [Q8:Q9]
            [A1].Select
            Application.EnableEvents = True
        End If
    End Sub
    T'as vu comme c'est beau en utilisant l'icône pour le code comme conseillé dans les règles du forum !

    __________________________________________________________________________________________

    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion …

    __________________________________________________________________________________________
    Le savoir est la seule matière qui s'accroit quand on la partage. (Socrate)

  10. #10
    Membre averti
    Inscrit en
    Décembre 2013
    Messages
    11
    Détails du profil
    Informations forums :
    Inscription : Décembre 2013
    Messages : 11
    Par défaut
    Merci bien sa va me faire avancer sur mon application

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [E-07] Comment affecter par macro une macro à un objet
    Par BATISSEUR dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 30/01/2009, 09h49
  2. Affecter le vide à une plage de cellule
    Par eclix3 dans le forum Excel
    Réponses: 3
    Dernier message: 10/01/2008, 16h46
  3. [VBA-E] Affecter un tableau à une plage de cellules, serait-ce possible ?
    Par ouskel'n'or dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 08/02/2007, 12h59
  4. affecter un nom à une plage de cellule
    Par anisr dans le forum Macros et VBA Excel
    Réponses: 13
    Dernier message: 22/11/2006, 10h37
  5. [VBA-E] Associer une macro à une cellule
    Par cwain dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 13/04/2006, 13h50

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