VBA ajouter un objet

adelaidetermote

XLDnaute Nouveau
Bonjour tout le monde,

J'aimerai avoir quelques renseignements sur les objets du VBA. En effet comme vous pourrez le trouver su rle fichier joint, il y a un objet effacer tout sur ma feuille excel. Celui-ci me pose un problème en effet je n'arrive pas à le modifier. Je voulais donc savoir comment accéder aux menus qui permet de modifier cet objet?:confused:
Dans un second temps je me suis aperçu dans l'interface VBA, qu'il ya juste au dessus de la feuille de saisie des code une liste dans laquelle apparaît Général, worksheet, CommandButton1. CommantButton1 est lié à l'objet de la feuille. Et j'aimerai pouvoir créer des objet comme celui-ci dans la feuille au lieu de passer par un bouton auquel on affecte une macro.:confused:

Voila si vous avez des informations, des aides ou des conseils à me proposer sur ce sujet je suis preneuse.

Voili voilou

Merci

BOnne journée
 

Pièces jointes

  • Test Objet.zip
    25.1 KB · Affichages: 52

pierrejean

XLDnaute Barbatruc
Re : VBA ajouter un objet

Bonjour adelaidetermote

L'objet dont tu parles EST un bouton auquel est affecté une macro (Private Sub CommandButton1_Click() )
Pour le modifier (ou en creer un autre ):
Developpeur > Mode creation > clic droit sur le bouton donne acces aux propriétés et au code
 

Gorfael

XLDnaute Barbatruc
Re : VBA ajouter un objet

Salut adelaidetermote et le forum
J'ai un peu de mal à comprendre ce que tu veux
Dans un second temps je me suis aperçu dans l'interface VBA, qu'il ya juste au dessus de la feuille de saisie des code une liste dans laquelle apparaît Général, worksheet, CommandButton1.
Ouais, ouais... Tu viens juste de découvrir le VBA ?
Un module de classe feuille est surmonté de 2 cases : une case "objet" dans laquelle sont répertorié les "objets" qui existent sur ta feuille, ainsi que ta feuille
Une deuxième case qui liste les macros liées à l'objet de la première case.
Quand tu crées un objet sur ta feuille, s'il est issu de la barre d'outils :
- Formulaire : quand tu lui demandes d'affecter une macro (clic-droit>>affecter une macro), il t'en propose une par défaut (Nom_QuandClic) sur un module général
- Boîte à outils contrôle : Si tu vas directement dans ton module lié à la feuille sur laquelle tu viens de le créer, et que tu regardes dans la case de gauche, son nom a été ajouté => si tu le sélectionnes, Vba crée une macro par défaut (dépend de l'objet), dont le titre apparaît dans la case de droite, et dont la définition apparaît sur la feuille de code (ligne de titre/ligne de fin de macro).

Tu ne peux pas créer un objet à ce niveau !
Un objet réagit à un certain nombre de propriétés ou de méthodes définies, dont les macros qui réagissent à certains actions sur l'objet. Une classe regroupe tous les objets qui réagissent aux mêmes méthodes et aux mêmes propriétés, ça évite de devoir les "créer".

Par exemple
si tu crées un bouton de commande et un bouton de bascule, ils ont les mêmes macros évènementielles, mais pas les mêmes propriétés

Une Zone de liste et une zone de liste déroulante n'ont pas la même macro évènementielle par défaut, ni le même nombre de macros évènementielles prédéfinies.

Enfin... tous ça pour dire qu'il ne faut pas mettre la charrue avant les bœufs sous peine d'aller droit à la catastrophe.
A+
Edit : Salut PierreJean. Petite question : tu le trouves où ton menu développeur sur V.2003 ?
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 756
Messages
2 091 749
Membres
105 062
dernier inscrit
Ret78