boucle (checkbox)

nicho

XLDnaute Occasionnel
salut très chère ami(e)s du forum

je sollicite vote aide pour m'aider à créer une boucle d'une macro checkbox

si c'est possible

merci de votre aide
 

Pièces jointes

  • boucle avec une checkbox .xls
    34 KB · Affichages: 49

nicho

XLDnaute Occasionnel
Re : boucle (checkbox)

héhé non je l'avais pas essayé :rolleyes:

merci beaucoup de ton aide Fred0o

P.S: je tien a faire une boucle car j'ai 33 colonne comme ça

si c'est pas possible je remplis tous a la main c'est pas grave mais avant tout je veut (stp) s'avoir si c'est pssible ou non

merci encore une fois
 

laetitia90

XLDnaute Barbatruc
Re : boucle (checkbox)

bonjour nicho,Fred0o
suppose que tes cellules demarre a f19 a al 19

Code:
 Dim i As Byte
 For i = 1 To 33
 ActiveSheet.OLEObjects("CheckBox" & i).Object = IIf(Cells(19, i + 5) = 1, 1, 0)
 Next
peut etre mettre dans l'evenement change plus simple

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
 If Not Intersect(Target, [f6:al18]) Is Nothing And Target.Count = 1 Then
 Dim i As Byte
 For i = 1 To 33
 ActiveSheet.OLEObjects("CheckBox" & i).Object = IIf(Cells(19, i + 5) = 1, 1, 0)
 Next
 End If
End Sub

ou choisir des case a cocher(formulaire) peut être plus simple
 

Si...

XLDnaute Barbatruc
Re : boucle (checkbox)

salut

Si... j'ai compris :

Avec des Cases à cocher (de formulaire) définir respectivement les cellules liées : F19, G19 ...
Pour clic (valeur formule)
Code:
Private Sub Worksheet_SelectionChange(ByVal C As Range)
  If Intersect(C, Range("F19:G19")) Is Nothing Then Exit Sub
  Cells(3, C.Column).Value = Cells(3, C.Column).Value
End Sub
 

laetitia90

XLDnaute Barbatruc
Re : boucle (checkbox)

re, exemple lance la macro1

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, [F19:M19]) Is Nothing And Target.Count = 1 Then
 Dim i As Byte
 For i = 1 To 8
 ActiveSheet.OLEObjects("CheckBox" & i).Object = IIf(Cells(19, i + 5) = 1, 1, 0)
 If Cells(19, i + 5) = 1 Then macro1
 Next
 End If
End Sub

Sub macro1()
MsgBox "aa"
End Sub
 

nicho

XLDnaute Occasionnel
Re : boucle (checkbox)

voici ma macro

Private Sub CheckBox1_Click()
If Range("f19") = 1 Then
Range("f3").Select
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
End If
End Sub

je veut qu'elle s’exécute pour tout les checkbox coché ("en prenant compte de la cellule ou se trouve la checkbox")
ex
la checkbox1 coché la macro s’exécute pour la cellule f3
la checkbox2 coché la macro s’exécute pour la cellule g3
......

svp, merci
 

laetitia90

XLDnaute Barbatruc
Re : boucle (checkbox)

re essai comme cela mais les boutons formulaire plus simple comme je t'ais dis plus haut.......

Code:
[CODE]Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, [F19:M19]) Is Nothing And Target.Count = 1 Then
 Dim i As Byte
 For i = 1 To 8
 ActiveSheet.OLEObjects("CheckBox" & i).Object = IIf(Cells(19, i + 5) = 1, 1, 0)
 If Cells(19, i + 5) = 1 Then
 Cells(19 - 16, i + 5).Select
 Selection.Copy
 Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
 :=False, Transpose:=False
 Application.CutCopyMode = False
 End If
 Next
 End If
End Sub
[/CODE]


par contre ton code copy ou ????

plus le temps de rester sorry
 

Jam

XLDnaute Accro
Re : boucle (checkbox)

Salut à tous,

Ci-après un bout de code qui parcours l'ensemble des objets Ole (les checkbox en l'occurence) et qui, si la cellule en ligne 19 = 1 recopie la date en ligne 3 dans cellule de la ligne 20.
J'espère que cela t'aidera à atteindre ton objectif qui manque un peu de clarté ;)

VB:
Private Sub test2()
Dim x As OLEObject
Dim i As Long


For Each x In OLEObjects
    i = CLng(Right$(x.Name, Len(x.Name) - 8)) + 5
    If Cells(19, i) = 1 Then
         'exemple je copie la date une cellule plus bas
         Cells(20, i) = Cells(3, i)
             End If
Next


End Sub
 

Statistiques des forums

Discussions
312 492
Messages
2 088 910
Membres
103 983
dernier inscrit
AlbertCouillard