Bonjour,
Je suis en cours de rédaction d'un code pour :
1) Regarder dans la table 1 la quantité de ligne correspondant à un critère
2) Si la quantité de ligne est supérieure à 2, regarder si mon critère est dans la table 2
3) Si le critère n'est pas déjà présent dans la table 2, copier le critère dans la table 2
Pour cela j'ai créer le code ci-dessous
Comme visible ci-dessus j'ai essayé plusieurs façon de vérifier que mon critère "i" soit présent dans la table 2 (Dantotsu) mais cela ne fonctionne pas...
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 Sub mise_a_jour() Dim i As Integer Dim MaxDantotsu As Integer Dim k As Integer Dim j As Integer Dim Dantotsu As Worksheet Dim Data_CVI As Worksheet Set Dantotsu = Sheets("Dantotsu") Set Data_CVI = Sheets("Data_CVI") Data_CVI.Activate 'Déterminer le numéro Dantotsu max de l'onglet Data_CVI MaxDantotsu = Data_CVI.Application.WorksheetFunction.Max(Range("g2:g" & Range("g65530").End(xlUp).Row)) 'Copier les numéros Dantotsu dans l'ordre croissant et sans saut de ligne depuis l'onglet Data_CVI vers l'onglet Dantotsu. Les nouveaux points Dantotsu s'affichent sur fond rouge k = 2 For i = 1 To MaxDantotsu If Data_CVI.Application.WorksheetFunction.CountIf([g:g], UCase(i)) > 2 Then ' If Dantotsu.Application.WorksheetFunction.CountIf(Range(Cells(2, 1), Cells(MaxDantotsu, 1)), i) = 0 Then ' j = Dantotsu.Application.WorksheetFunction.CountIf([A:A], UCase(i)) Dantotsu.Cells(1, 7).Value = Application.WorksheetFunction.CountIf(Range("A2:A" & MaxDantotsu), i) If j = 0 Then ' If Dantotsu.Application.WorksheetFunction.CountIf([A:A], UCase(i)) = 0 Then Dantotsu.Cells(k, 1) = i Dantotsu.Cells(k, 1).Interior.ColorIndex = 3 End If k = k + 1 End If Next i End Sub
Si quelqu'un avait la gentillesse de m'éclairer, je lui en serais reconnaisssant.
Cordialement
Sylvain
Partager