Modifier les parametre d'un controles dans une feuille en vba

Résolu
Bob0876 Messages postés 40 Date d'inscription   Statut Membre Dernière intervention   -  
Bob0876 Messages postés 40 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

j'aimerais modifier le titre de certain Label contenue dans une feuille a partir du code vba de cette feuille en question mais je ne sais pas comment.

Voici ma tentative echoué :

For i = 4 To 7
    
    Workbooks("class.xlsl").ActiveSheet.OLEObjects("Label" & i).Value = Workbooks("class.xlsl").Worksheets("transfert" & po).Range("A" & i).Value

Next i


sa me donne une erreur propriété ou methode non géré par cette objet

Et j'aimerais aussi que cette action de s'effectue seulement une fois lors de la creation de cette feuille en question

Mais je ne sais pas comment

Merci
A voir également:

5 réponses

PlacageGranby Messages postés 393 Date d'inscription   Statut Membre Dernière intervention   26
 
0
Bob0876 Messages postés 40 Date d'inscription   Statut Membre Dernière intervention  
 
Me.controls ne marche pas sa me dit membre de methode ou donnée introuvable

j'ai dejas utilisé cette methode avec mais userform mais on dirais que lorsque les controles sont directement sur la feuille il ne les trouve pas
0
thev Messages postés 1985 Date d'inscription   Statut Membre Dernière intervention   713
 
Tout dépend du type de contrôle inséré dans ta feuille .
La collection "OLEOBJECTS" correspond aux contrôles ActiveX. Pour les contrôles formulaire, il faut utiliser la collection "SHAPES"
Pour un Userform, la collection est "CONTROLS".
--
0
thev Messages postés 1985 Date d'inscription   Statut Membre Dernière intervention   713
 
Je complète ma réponse.
S'il s'agit d'un contrôle ActiveX :
Workbooks("class.xlsl").ActiveSheet.OLEObjects("Label" & i).Object.Caption = Workbooks("class.xlsl").Worksheets("transfert" & po).Range("A" & i).Value

S'il s'agit d'un contrôle formulaire :
Workbooks("class.xlsl").ActiveSheet.Shapes("Label" & i).AlternativeText = Workbooks("class.xlsl").Worksheets("transfert" & po).Range("A" & i).Value

--
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Bob0876 Messages postés 40 Date d'inscription   Statut Membre Dernière intervention  
 
Je teste sa dès demain.

Merci bcp,
0