Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2833 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  [RESOLU] [VBA Excel] ajout dynamique de boutons dans une feuille excel

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[RESOLU] [VBA Excel] ajout dynamique de boutons dans une feuille excel

n°1737540
wedgeant
Da penguin inside
Posté le 27-05-2008 à 09:01:49  profilanswer
 

'jour
 
Je mets en place une macro excel qui parse un fichier texte et le met en forme dans une feuille excel ... jusqu'ici tout va bien.
Je voudrais en plus que cette macro ajoute automatiquement des boutons sur cette feuille nouvellement créée (et bien sur, qu'elle ajoute le code VBA associé à l'action "Click()" :o)
 
J'ai actuellement écrit ça:
 

Code :
  1. Dim bouton_ext As OLEObject
  2. Dim bouton_lst As OLEObject
  3. Dim recap As Workbook
  4.  
  5. [...]
  6.  
  7. recap.Sheets(1).Activate
  8. Set bouton_ext = ActiveSheet.OLEObjects.Add(ClassType:="Forms.CommandButton.1", Left:=700, Top:=50, Width:=150, Height:=50)
  9. Set bouton_lst = ActiveSheet.OLEObjects.Add(ClassType:="Forms.CommandButton.1", Left:=700, Top:=125, Width:=150, Height:=50)
  10. bouton_ext.Name = "bouton_ext"
  11. bouton_lst.Name = "bouton_lst"
  12. bouton_ext.Object.Caption = "Bouton extraction"
  13. bouton_lst.Object.Caption = "Bouton listage"
  14.      
  15. code_ext = "Sub CommandButton1_Click()" & vbCrLf & "    MsgBox(""Hello"" )" & vbCrLf & "End Sub"
  16. recap.VBProject.VBComponents.Add(1).CodeModule.InsertLines 1, code_ext


 
Alors avec ça, j'ai bien les boutons, mais quand je clique dessus, rien ne se passe :/
J'ai loupé quelque chose ? :??:
 
edit: ah oui, je précise qu'en remplaçant "CommandButton1" par "bouton_ext" dans la variable "code_ext", ça fait exactement la même chose, c'est à dire ... rien :sweat:


Message édité par wedgeant le 27-05-2008 à 13:12:47

---------------
Wedge#2487 @HS -#- PW: +∞ -#- Khaz-Modan/Boltiz @WoW
mood
Publicité
Posté le 27-05-2008 à 09:01:49  profilanswer
 

n°1737646
LePhasme
Les Belges domineront le monde
Posté le 27-05-2008 à 11:27:44  profilanswer
 

Tu n'as pas un bouton_ext.onaction = mafonctionquivabien ?


---------------
Instagram - Mon PVT en Australie.
n°1737666
wedgeant
Da penguin inside
Posté le 27-05-2008 à 11:43:48  profilanswer
 

je viens de regarder ... y'a bien mais ça plante à l'exécution si je fais ça:

Code :
  1. recap.Worksheets(1).Shapes(1).OnAction = "CommandButton1_Click"
 
Citation :

Erreur d'excécution '1004'

 

Erreur définie par l'application ou par l'objet

 

[:cerveau pingouino]

 

m'ci :jap:


Message édité par wedgeant le 27-05-2008 à 11:44:00

---------------
Wedge#2487 @HS -#- PW: +∞ -#- Khaz-Modan/Boltiz @WoW
n°1737705
wedgeant
Da penguin inside
Posté le 27-05-2008 à 13:14:43  profilanswer
 

Voila, un gentil collègue a trouvé la solution :jap:
Mon problème se situait au niveau de l'insertion du code VB du bouton, voila le code correct:
 

Code :
  1. With recap.VBProject.VBComponents(recap.Sheets(1).Name).CodeModule
  2.    nbl = .CountOfLines
  3.    .InsertLines nbl + 1, code_ext
  4. End With


---------------
Wedge#2487 @HS -#- PW: +∞ -#- Khaz-Modan/Boltiz @WoW

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  [RESOLU] [VBA Excel] ajout dynamique de boutons dans une feuille excel

 

Sujets relatifs
Résolu. [JavaScript] - Petite question sur l'attribut disabled[RESOLU] problème script et commande awk
[Résolu] Lettres accentuées et substitution[Resolu] Enregistrer un fichier sous.....
ajout d'un php.iniSyntaxe VBA pour copie entre fichiers XL
[résolu] supprimer liens deja visités en arrivant sur le site[RESOLU] Récupérer des valeurs par une requête ldap_search
[RESOLU] Enregistrement d'images 
Plus de sujets relatifs à : [RESOLU] [VBA Excel] ajout dynamique de boutons dans une feuille excel


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR