VBA Excel , un dernier bug !

toniovargas Messages postés 7 Date d'inscription dimanche 7 novembre 2004 Statut Membre Dernière intervention 19 février 2011 - 7 avril 2005 à 02:06
econs Messages postés 4030 Date d'inscription mardi 13 mai 2003 Statut Membre Dernière intervention 23 décembre 2008 - 7 avril 2005 à 08:55
en fait voici mon problème:


For BoucleCol = 1 To MaxColonnes
If Controls("LibChamp" & BoucleCol) = "bonjour" then
Controls("LibChamp" & BoucleCol).FontSize = 8
Controls("LibChamp" & BoucleCol).ForeColor = vbRed
Controls("LibChamp" & BoucleCol).Font.Bold = True
End If
If Controls("LibChamp" & BoucleCol) = "Merci" then
Controls("LibChamp" & BoucleCol).FontSize = 8
Controls("LibChamp" & BoucleCol).ForeColor = vbBlack
Controls("LibChamp" & BoucleCol).Font.Bold = True
End If
Next BoucleCol

Je voudrai que lorsque cette boucle tourne, si elle trouve le contenu bonjour
dans une cellule (la cellule peut contenir d'autres mots, par exemple "bonjour comment
tu vas") elle affiche une couleur à mes labels (que j'ai nommé LibChamp)
Merci si vous avez une réponse, je tourne en rond et c est le cas de le dire!!!

2 réponses

galopin01 Messages postés 133 Date d'inscription lundi 4 octobre 2004 Statut Membre Dernière intervention 14 octobre 2011 1
7 avril 2005 à 07:16
Bonjour,
Je n'ai vraiment pas le temps de t'apporter la solution "tout cuit" mais voici la clef pour manipuler les Label.Caption :

ProgId (pour retenir uniquement les contrôles Label)
Object (remplace la propriété Caption pour ce genre de contrôle)

Sub Test()
Dim O As OLEObject
For Each O In ActiveSheet.OLEObjects
If O.ProgId = "Forms.Label.1" Then MsgBox O.Object
Next
End Sub

(selon une information recueillie sur le Forum des MPFE)
A+
0
econs Messages postés 4030 Date d'inscription mardi 13 mai 2003 Statut Membre Dernière intervention 23 décembre 2008 25
7 avril 2005 à 08:55
For BoucleCol = 1 To MaxColonnes

If Instr(1,Controls("LibChamp" & BoucleCol),"bonjour")>0 then


Controls("LibChamp" & BoucleCol).FontSize = 8
Controls("LibChamp" & BoucleCol).ForeColor = vbRed
Controls("LibChamp" & BoucleCol).Font.Bold = True
End If

If Instr(1,Controls("LibChamp" & BoucleCol),"merci")>0 then


Controls("LibChamp" & BoucleCol).FontSize = 8
Controls("LibChamp" & BoucleCol).ForeColor = vbBlack
Controls("LibChamp" & BoucleCol).Font.Bold = True
End If


Next BoucleCol






sinon, tu ne trouveras que les cellules qui contiennent uniquement bonjour ou merci.



Manu
-------------------------------------------
Une question bien posée, c'est une chance de réponse bien adaptée.
0
Rejoignez-nous