Puisqu'il est déjà créé est-il possible de voir le code que vous avez fait avec les formes ? je trouve ça très instructif
OK faites ceci :
1. Dans le module 1, mettez cette instruction juste au dessus de SUB Suppr(). Attention c'est très important que ce soit en première ligne
Public Const Couleur As Long = 6724095
2. Toujours dans le module 1, mettez le code ci-dessous
Sub Color() 'colorier Forme
Dim i As Byte, j As Byte, k As Byte
With ActiveSheet
For i = 1 To .ListObjects.Count
With .ListObjects(i)
For j = 0 To .DataBodyRange.Count
If .ListColumns(1).DataBodyRange.Item(j).Interior.Color = Couleur Then k = k + 1
Next j
End With
With .DrawingObjects(i + 1).ShapeRange.Fill.ForeColor
If k = j - 1 Then
.RGB = RGB(146, 208, 80)
Else: .RGB = RGB(0, 141, 245)
End If
k = 0
End With
Next i
End With
End Sub
NB : J'ai supposé que votre bouton "supprimer" est toujours sur la feuille
3. Dans la feuille, mettez le code ci-dessous
- Faites un click droite sur l'onglet concerné par les tableaux
- Choisir l'option "Visualiser le code"
- Dans la fenêtre coller le code ci-après
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim Num As Byte
Num = Right(Target.ListObject.HeaderRowRange, 1)
If Not Intersect(Target, ActiveSheet.ListObjects("Tableau" & Num).DataBodyRange) Is Nothing Then
Cancel = False
With Target.Interior
If .Pattern = xlNone Then
.Color = Couleur
Else: .Pattern = xlNone
End If
End With
End If
Cancel = True
Call Color 'colorier les formes
End Sub
Comme je vois que vous avez eu quelques souci sur le post précédent, je vous poste le fichier
Cordialement