|
Publicité | ||||||||||||||||||||||
|
|
#1 (permalink) |
|
Candidat au titre de Membre du Club
![]() Date d'inscription: juin 2009
Messages: 24
|
Bonjour tout le monde,
J'aurais besoin de votre aide sur trois points. J'ai créé une macro pour inserer des CheckBox sur toutes les lignes d'un tableau. 1°) Je l'ai fait avec un For et du coup c'est assez long car il y a plus de 1500lignes. Ne peut on pas le faire autrement (genre en selectionnant toutes les cellules d'un coup et en inserant toutes les checkbox en même temps ?) 2°) J'aimerais qu'elles soient insérées en étant cochées (donc True), mais en placant un peu partout un valeur:=True ca n'a rien donné, comme puis-je faire ? 3°) Dans la macro essai() je souhaite copié l'était (vrai ou faux) des checkbox de chaque ligne dans une colonne de chacune des ligne mais cette macro ne marche pas, j'ai du mal nommer les checkbox dans Checkbox() ou mal les appeler dans essai() mais en remuant le truc dans tous les sens je n'ai pas réussi à m'extirper.... Merci par avance pour votre aide Code :
Sub CheckBox() Dim t, l, i NbreLignes = Application.CountA(Range("Q1:Q65536")) + 3 For i = 5 To 10 Sheets(1).Activate Cells(i, 20).Select t = ActiveCell.Top l = ActiveCell.Left Set Obj = ActiveSheet.OLEObjects.Add(ClassType:="Forms.CheckBox.1", Link:=False, _ DisplayAsIcon:=False, Left:=l + 30, Top:=t + 2, Width:=10, Height:=10 _ ) Obj.Name = "Check" & i Next i End Sub Sub essai() For i = 5 To 10 If "Check" & i.Value = True Then Cells(i, 25) = "OUI" Else Cells(i, 25) = "NON" End If Next i End Sub |
|
|
|
|
|
#2 (permalink) |
|
Expert Confirmé
![]() Date d'inscription: juillet 2008
Localisation: Elsass
Âge: 24
Messages: 1 887
|
Bonjour
Pour les initier a vrai tu fait Code :
For i = 5 To 10 Sheets(1).Activate Cells(i, 20).Select t = ActiveCell.Top l = ActiveCell.Left Set Obj = ActiveSheet.OLEObjects.Add(ClassType:="Forms.CheckBox.1", Link:=False, _ DisplayAsIcon:=False, Left:=l + 30, Top:=t + 2, Width:=10, Height:=10 _ ) Obj.Name = "Check" & i obj.value=true 'ceci devrais fonctionner Next i Code :
if "Check" & i then |
|
|
|
|
|
#4 (permalink) |
|
Expert Confirmé
![]() Date d'inscription: juillet 2008
Localisation: Elsass
Âge: 24
Messages: 1 887
|
Surprenant bon désolé de mettre planté là je ne vois pas quoi faire d'autre.
Pour ta deuxième question JE me disais bien que je l'avais déjà vu passer. Ucfoutu y avait répondu j'espère que ca t'ira je n'ai pas testé http://www.developpez.net/forums/d71...bjet-variable/ Un deuxième lien sur le même principe http://www.developpez.net/forums/d75...l/soucis-code/ |
|
|
|
|
|
#5 (permalink) |
|
Membre Expert
![]() Date d'inscription: décembre 2002
Localisation: 38
Âge: 20
Messages: 1 160
|
bonjour Tomuscz l' ami krovax le forum
peut être comme cela a tester Code :
Set Obj = ActiveSheet.OLEObjects.Add(ClassType:="Forms.CheckBox.1", Link:=False, _ DisplayAsIcon:=False, Left:=l + 30, Top:=t + 2, Width:=10, Height:=10) Obj.Name = "Check" & i Next i For Each Obj In ActiveSheet.OLEObjects If TypeOf Obj.Object Is MSForms.CheckBox Then Obj.Object = True End If Next Obj End Sub Code :
Sub essai() i = 5 For Each Obj In ActiveSheet.OLEObjects If TypeOf Obj.Object Is MSForms.CheckBox Then If Obj.Object = True Then Cells(i, 25) = "OUI" Else Cells(i, 25) = "NON" End If: End If i = i + 1 Next Obj End Sub
__________________
SALUTATIONS
|
|
|
|
|
|
![]() |
||
VBA Insertion de CheckBox
|
||
| Outils de la discussion | |
|
|