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 :

[VBA-E] Copie de boutons


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    32
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 32
    Par défaut [VBA-E] Copie de boutons
    Bonsoir!
    J'ai quelques difficultés en VBA Excel, avec la gestion des boutons. Je m'explique :
    Sur ma feuille j'ai un bouton (Button, pas CommandButton) dont le code qui lui est attaché permet d'afficher la date actuelle, dans la cellule à côté.
    Ce que je cherche à faire, c'est, à l'aide d'une macro, de copier ce bouton à un autre endroit. Et que quand je clique sur ce nouveau bouton, la date actuelle s'affiche dans la cellule juste à côté de ce nouveau bouton.
    Le problème c'est que lors de la copie, mon bouton change de nom, et je n'arrive pas à trouver de code permettant d'insérer la date sans utiliser :
    - les coordonnées de la cellule
    ou
    - le nom du bouton
    Ce qu'il me faudrait c'est un code qui désigne la cellule juste à coté de mon objet bouton, mais sans utiliser son nom.

    Si quelqu'un peut m'aider, ca me rendrait un sacré service.
    Merci d'avance !

  2. #2
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Quand tu colles ton bouton à un "autre endroit", tu donnes bien une position. Quelle est-elle ?

    A+

  3. #3
    Membre émérite
    Inscrit en
    Septembre 2005
    Messages
    617
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 617
    Par défaut
    Il nous faudrait le code qui copie ce bouton a un autre endroit...

    La je pourrais t'aider...

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    32
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 32
    Par défaut
    Le bouton fait parti d'une plage de donnée, je prend d'autres informations également. Ce qui donne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    Range("A1,F3").select
    Selection.Copy
    Cells(5,1).Select
    ActiveSheet.Paste

  5. #5
    Expert confirmé

    Homme Profil pro
    Inscrit en
    Août 2005
    Messages
    3 317
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2005
    Messages : 3 317
    Par défaut
    bonjour

    tu peux tester cette procedure

    la 1ere macro permet de copier la plage de cellules , le bouton et d'affecter la macro "affcherDate"

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    Sub copiePlage_Et_Bouton()
    Range("A1:F3").Copy
    Cells(5, 1).Select
    ActiveSheet.Paste
     
    'affectation de la macro "affcherDate" au nouveau bouton
    ActiveSheet.Shapes(ActiveSheet.Shapes.Count).OnAction = "afficherDate"
    End Sub

    la 2eme procedure , à placer dans un module permet juste d'afficher la date, à coté du bouton qui est cliqué
    cette macro doit etre appelée depuis les boutons de la feuille

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Sub afficherDate()
    'Application.Caller permet de récupérer l'objet d'ou est lancé la macro
    'adapter l'Offset en fonction de la dimension du bouton
    ActiveSheet.Shapes(Application.Caller).TopLeftCell.Offset(0, 2) = Date
    End Sub

    bonne journée
    michel

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    32
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 32
    Par défaut
    Merci beaucoup ca marche impeccable!

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

Discussions similaires

  1. Réponses: 12
    Dernier message: 07/12/2005, 18h42
  2. [VBA excel] Probleme sur bouton commande
    Par RedBurn dans le forum Macros et VBA Excel
    Réponses: 21
    Dernier message: 22/11/2005, 10h10
  3. [VBA-W] Créer un bouton de commande
    Par maketossss dans le forum VBA Word
    Réponses: 15
    Dernier message: 07/11/2005, 17h07
  4. [VBA-E] Copie et renomage de feuilles
    Par cbonnard dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 24/10/2005, 15h55
  5. Réponses: 5
    Dernier message: 04/04/2003, 15h02

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