Pb de propriété d'un spinbutton

[Résolu]
Signaler
Messages postés
5
Date d'inscription
mardi 19 décembre 2006
Statut
Membre
Dernière intervention
22 décembre 2006
-
Messages postés
402
Date d'inscription
vendredi 6 août 2004
Statut
Membre
Dernière intervention
12 octobre 2008
-
Bonjour, j'ai crée avec excel une macro qui me permet de créer automatiquement un controle 'spinbutton' or, je souhaite maintenant y modifier directement les propriétés mais je n'y arrive pas... en effet, une fois la macro rélasi j'ia le message (objet non géré...)
voici le code:
Sub commandbutton1_click()
  Dim Gauche As Single, Haut As Single, Largeur As Single, Hauteur As Single
    numero = 11
    nom_btn = "Btn_" & numero
    cellule_lie = "e" & numero



'Ajout d'un SpinButton de la barre d'outils VB
    Gauche = Range("A11").Left
    Haut = Range("A11").Top
    Largeur = Range("A11").Width
    Hauteur = Range("A11").Height




   ActiveSheet.OLEObjects.Add ClassType:="Forms.SpinButton.1", Link:=False, _
   DisplayAsIcon:=False, Left:=Gauche, Top:=Haut, Width:=Largeur, Height:=Hauteur




'Modif des propriétés du spinbutton


Worksheets("feuil3").OLEObjects("SpinButton1").LinkedCell = cellule_lie
Worksheets("feuil3").OLEObjects("spinbutton1").Name = nom_btn
'debut des problemes


With ActiveSheet.nom_btn
    .Min = 0
    .Max = 4
  .Orientation = 0
   .Value = 1
End With



End Sub

Je pense que cela vient du fait qu'il faut un événement avant de pouvoir faire ses modifs sur l'objet mais je ne vois pas comment faire cela.. En effet , lorsque je crée mon objet non pas sur le clic du bouton mais avant sur 'got focus' et ensuite je modifie les propriétés sur le clic cela fonctionne mais ne me safisfait pas.. Quelqu'un saurait-il comment faire pour éviter de réaliser ceci simplement sur le clic????

Merci de votre aide.

1 réponse

Messages postés
402
Date d'inscription
vendredi 6 août 2004
Statut
Membre
Dernière intervention
12 octobre 2008
28
bonjour

tu peux essayer cette adaptation

 Dim Gauche As Single, Haut As Single, Largeur As Single, Hauteur As Single
 Dim Obj As OLEObject
 
    numero = 11
    nom_btn = "Btn_" & numero
    cellule_lie = "e" & numero


    'Ajout d'un SpinButton de la barre d'outils VB
    Gauche = Range("A11").Left
    Haut = Range("A11").Top
    Largeur = Range("A11").Width
    Hauteur = Range("A11").Height


   Set Obj = ActiveSheet.OLEObjects.Add(ClassType:="Forms.SpinButton.1", Link:=False, _
        DisplayAsIcon:=False, Left:=Gauche, Top:=Haut, Width:=Largeur, Height:=Hauteur)


    'Modif des propriétés du spinbutton
    With Obj
        .LinkedCell = cellule_lie
        .Name = nom_btn
        .Object.Min = 0
        .Object.Max = 4
        .Object.Orientation = 0
        .Object.Value = 1
    End With

bon apres midi
michel