Bonjour,
A l'aide du code suivant j'arrive à insérer automatiquement des checkboxes (O/N) dans toutes les lignes existantes de la colonne N :
Le problème est qu'à chaque exécution, des nouvelles checkboxes s'insèrent par dessus celles créées par les exécutions précédentes. J'aimerais donc être capable d'insérer des nouvelles checkboxes seulement dans les cellules n'en contenant pas pour ne pas écraser les anciennes. Voici le scénario classique :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 Sub AjoutCheckBox() Dim cell As Range Dim i As Integer Dim j As Integer i = ActiveSheet.UsedRange.Rows.Count 'nombre de lignes existantes j = 3' ma première ligne à considérer est la 3éme For Each cell In Range("N" & j & ":N" & i) With ActiveSheet.CheckBoxes.Add(cell.Left, _ cell.Top, cell.Width, cell.Height) .LinkedCell = cell.Offset(, 1) .Name = "CheckBox_N_" & j .Caption = "O/N" End With j = j + 1 Next
1- Je crée 3 nouvelles lignes avec des données dans les autres colonnes (la colonne N est vide)
2- J’exécute ma Macro, les 3 checkbox s'insèrent automatiquement dans les lignes 3 à 6 (vu que ma première ligne de données est la 3éme)
3- J'insère une nouvelle ligne (manuellement, à l'aide des menus excel)
4- Je ré-exécute ma macro => Seulement une nouvelle checkbox s’insère dans la colonne 7N.
5- Ainsi de suite
Merci d'avance de votre aide.
Partager