A part sur le nom du control, y a-t-il un moyen pour retrouver le type d'un control (label, DTPicker, etc..)
Dans ma boucle je ne veux traiter que les DTPicker
For each cc in userform1.controls
if cc "estun" DTPicker then ...
next
A part sur le nom du control, y a-t-il un moyen pour retrouver le type d'un control (label, DTPicker, etc..)
Dans ma boucle je ne veux traiter que les DTPicker
For each cc in userform1.controls
if cc "estun" DTPicker then ...
next
Merci
une fonction du genre .type doit exister tu dois pouvoir faier for each cc in usf1.controls
msgbox .name & "est un" & .type
Paul Hood
Posté le 20-07-2006 à 09:47:36
effectivement j'ai cherché un truc du style obj.type ou IsDTPicker(obj) ou TypeOf (obj)
mais ca n'a rien donné
alors A vo't bon coeur M'sieur dame
wape
Posté le 20-07-2006 à 10:05:25
Bonjour,
Essaye avec :
For Each cc In UserForm1.Controls
If TypeName(cc) = "DTPicker" Then ...
Next
Je voulais éviter avec le nom...mais je crois que je ne vais pas avoir le choix
si cela fonctionne, c'est pas si mal déjà
Paul Hood
Posté le 21-07-2006 à 09:35:25
Mon seul soucis c'est que ca reste lié au nom et c'est trop subjectif. Si quelqu'un d'autre maintient le programme et qu'il modifie les noms par défaut...ca marche moins bien ... c'est sûr !
Message édité par Paul Hood le 21-07-2006 à 09:35:40
wape
Posté le 24-07-2006 à 10:28:13
Bonjour,
La fonction TypeName() renvoie le TYPE du contrôle sur lequel elle s'applique, indépendamment du nom du contrôle en question.
Que ton contrôle DTPicker s'appelle "DTPicker1", "DTPicker2" ou "Tartempion", la fonction TypeName() renverra dans tous les cas "DTPicker".