VBA Excel - Conversion nom d'objet en string
Fermé
jp22
-
24 févr. 2009 à 22:23
gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 - 25 févr. 2009 à 19:00
gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 - 25 févr. 2009 à 19:00
A voir également:
- VBA Excel - Conversion nom d'objet en string
- Liste déroulante excel - Guide
- Vente objet occasion entre particulier - Guide
- Mise en forme conditionnelle excel - Guide
- Si et excel - Guide
- Aller à la ligne excel - Guide
3 réponses
gbinforme
Messages postés
14946
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 711
25 févr. 2009 à 19:00
25 févr. 2009 à 19:00
bonjour
En prenant l'exemple 3 fourni cela devrait donner :
En prenant l'exemple 3 fourni cela devrait donner :
Public Sub boucle_obj() Dim o As Integer For o = 1 To 100 ' à adapter à ton classeur Sheets("Feuil1").Shapes("CheckBox" & o + 4).Enabled = True Sheets("Feuil1").Shapes("CheckBox" & o + 4).Value = True Next o End Sub
gbinforme
Messages postés
14946
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 711
24 févr. 2009 à 23:10
24 févr. 2009 à 23:10
bonjour
Tu as plusieurs façons de la faire et je t'en mets 3 pour exemple :
J'ai supposé que tes contrôles étaient sur la feuille car si tu es dans un formulaire c'est différent.
Tu as plusieurs façons de la faire et je t'en mets 3 pour exemple :
Public Sub boucle_obj() Dim o As Integer Dim nom As String Dim obj As Object For Each obj In ActiveSheet.Shapes nom = obj.Name Next obj For o = 1 To ActiveSheet.Shapes.Count nom = ActiveSheet.Shapes(o).Name Next o For o = 1 To ActiveSheet.Shapes.Count On Error Resume Next ' filtre autres controles nom = ActiveSheet.Shapes("CheckBox" & o).Name Next o End Sub
J'ai supposé que tes contrôles étaient sur la feuille car si tu es dans un formulaire c'est différent.
Merci pour ta réponse,
En fais mes contrôles étant des tous des checkbox sont sur une autre feuille et je fonctionne avec Target.Value
If Target.Value = 1 Then
Sheets("Feuil1").CheckBox5.Enabled = True
Sheets("Feuil1").CheckBox5.Value = True
End If
If Target.Value = 2 Then
Sheets("Feuil1").CheckBox6.Enabled = False
Sheets("Feuil1").CheckBox6.Value = False
End If
If Target.Value = 3 Then
Sheets("Feuil1").CheckBox7.Enabled = False
Sheets("Feuil1").CheckBox7.Value = True
End If
etc...
C'est simplement pour savoir si c'est possible d'incrémenter automatiquement dans une boucle le numéro du checkbox au lieu de changer le chiffre a chaque fois.
Merci
En fais mes contrôles étant des tous des checkbox sont sur une autre feuille et je fonctionne avec Target.Value
If Target.Value = 1 Then
Sheets("Feuil1").CheckBox5.Enabled = True
Sheets("Feuil1").CheckBox5.Value = True
End If
If Target.Value = 2 Then
Sheets("Feuil1").CheckBox6.Enabled = False
Sheets("Feuil1").CheckBox6.Value = False
End If
If Target.Value = 3 Then
Sheets("Feuil1").CheckBox7.Enabled = False
Sheets("Feuil1").CheckBox7.Value = True
End If
etc...
C'est simplement pour savoir si c'est possible d'incrémenter automatiquement dans une boucle le numéro du checkbox au lieu de changer le chiffre a chaque fois.
Merci