Pb de propriété d'un spinbutton

Résolu
kerborel Messages postés 5 Date d'inscription mardi 19 décembre 2006 Statut Membre Dernière intervention 22 décembre 2006 - 22 déc. 2006 à 12:44
michelxld Messages postés 402 Date d'inscription vendredi 6 août 2004 Statut Membre Dernière intervention 12 octobre 2008 - 23 déc. 2006 à 16:16
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

michelxld Messages postés 402 Date d'inscription vendredi 6 août 2004 Statut Membre Dernière intervention 12 octobre 2008 32
23 déc. 2006 à 16:16
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
3
Rejoignez-nous