Bonjour à tous,

Je cherche à effectuer plusieurs contrôles sur plusieurs onglets sauf 3.

J'ai commencé à écrire un bout de code en jaune mais je sèche pour la suite.

Pouvez-vous m'aider svp. Je ne suis malheureusement pas une AS en VBA.

Merci d'avance


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
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
 
 
ThisWorkbook.Activate
 
Dim fl As Worksheet
 
               For Each fl In Worksheets
 
   ' If fl.Name <> "MENU" And fl.Name <> "infos" And fl.Name <> "Définition des frais" Then
 
'Vérifier présence numéro préfac
 
    If ThisWorkbook.Sheets("Base").Range("G4") = "" Then
        Cancel = True
        MsgBox "G4Attention des données sont vides, veuillez remplir les cellules vides."
    End If
'Next
 
'Filtrer les cellules en mise en forme conditionnelle
 
'Test 1
 
Worksheets("base").Activate
Range("$A$6:$P$800").AutoFilter Field:=1, Criteria1:=RGB(248, 203, 173), Operator:=xlFilterCellColor
 
    x = Range("$A$6:$A$800").SpecialCells(xlCellTypeVisible).Count
        If x > 1 Then
            msg = "A:" & x
        End If
 
    Worksheets("base").AutoFilterMode = False
 
'Test 2
Worksheets("base").Activate
Range("$A$6:$P$800").AutoFilter Field:=2, Criteria1:=RGB(248, 203, 173), Operator:=xlFilterCellColor
 
    x = Range("$B$6:$B$800").SpecialCells(xlCellTypeVisible).Count
        If x > 1 Then
        If msg <> "" Then msg = msg & Chr(13)
            msg = "B:" & x
        End If
 
Worksheets("base").AutoFilterMode = False