Cases à cocher

David

XLDnaute Occasionnel
Bonjour à tous

Je dois faire un centaine de cases à cocher et les lier à la cellule voisine, y a t'il un moyen que je créé un cases à cocher et avec un copier coller faire les 99 autres et que la case lié se décale d'une ligne en même temps ?

Quand je fais des copier /coller ou si je les tires la reférence de la cellule liée ne change pas :(

Merci d'avance.
 

d.ryba

XLDnaute Junior
Re : Cases à cocher

Bonsoir,

Avec la fonction recherche (souvent oubliée ^^), je t'ai trouvé ça https://www.excel-downloads.com/threads/inserer-une-case-a-cocher-dans-un-cellule.34739/

Le code VBA est facilement adptable.
Si tu n'y arrive pas ou connais rien, envoie un modèle correspondant à ton fichier, avec les informations utiles (colonne des checkBoxes, titre des checkboxes, celulles liées, nombre excates, etc...

Cordialement,
D.ryba ("D" pour David aussi)
 

bqtr

XLDnaute Accro
Re : Cases à cocher

Bonsoir les David,

Voici un exemple qui vient de se forum, mais l'auteur n'a pas laissé sa signature.

Code:
Sub CHCKB_Add()
Dim k As String, Ctrl As MSForms.CheckBox, Position As Range, X As OLEObject, i As Integer
k = Application.InputBox("Saisir un nombre", "Nombre de Controle", , , , , , 1)
If Val(k) = 0 Or k = "" Then Exit Sub
Application.ScreenUpdating = False
Columns(2).Clear
For Each X In ActiveSheet.OLEObjects
  If Left(X.Name, 5) = "Check" Then X.Delete
Next
Set Position = Range("A1")
For i = 1 To k
   Position.EntireRow.RowHeight = 15.5
   Set Ctrl = ActiveSheet.OLEObjects.Add(ClassType:="Forms.CheckBox.1", _
   Left:=Position.Left, Top:=Position.Top, Width:=Position.Width, Height:=Position.Height).Object
        With Ctrl
          .Caption = "ChckBx" & i
          .LinkedCell = Cells(i, 2).Address
          .Value = False
        End With
   Set Position = Position.Offset(1)
Next i
Application.ScreenUpdating = True
End Sub

Tu lances la macro et tu indiques le nombre de Checkbox.
Ils se créent dans la colonne A à partir de A1.


A+
 
Dernière édition:

juju_69

XLDnaute Occasionnel
Re : Cases à cocher

Hello,

Voici une piste (désolé pour ce code pas très propre ;))

Si tu as des cases à cocher de 1 à 100 et si tu veux la cellule liée de C1 à C100 par exemple

Sub Macro1()
Dim Addr, Chek As String, i As Byte, j As String
j = 1
For i = 1 To 100
Chek = "Check Box " & i
On Error GoTo fin:
ActiveSheet.Shapes(Chek).Select
Selection.LinkedCell = Cells(j, 3).Address 'cellule liée à adapter
j = j + 1
Next i
Exit Sub
fin: Exit Sub
End Sub
 

David

XLDnaute Occasionnel
Re : Cases à cocher

Bonjour à tous


Merci pour vos codes, je vais commencer par le plus simple et je verrai après.

Et effectivement juste avant d'aller me coucher, je n'ai pas pensé à la fonction recherche, désolé.



Merci à tous !!!
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 429
Messages
2 088 350
Membres
103 822
dernier inscrit
kader55