Bonjour à tous,
je viens de reprendre un de mes ancien fichier pour le mettre à jour pour mes futures collègues.
Et là j'ai un message d'incompatibilité de type sur une ligne qui fonctionnait très bien.
Il me surligne les lignes suivantes et je n'arrives à en découvrir la raison...
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 Sub Doublons() Balise0 Call ColorIndexNone Application.EnableEvents = False 'On declare les variables Dim ValInit, ValTrouv As String Dim I, J, K As Integer Dim Ws1, Ws2 As Worksheet Dim AdresBarillet1, AdresBarillet2 As String Set Ws1 = Worksheets("Salle des profs") 'On boucle sur les differentes feuilles pour la valeur de base For Each Ws1 In Worksheets 'On boucle tant que la feuille Ws1 n'est pas "Conflits" If Ws1.Name <> "Conflits" Then 'On boucle sur les differentes feuilles pour la valeur recherchee For Each Ws2 In Worksheets 'On boucle tant que la feuille Ws2 n'est pas "Conflits" If Ws2.Name <> "Conflits" Then 'On boucle sur les differentes lignes pour comparer les valeurs For I = 2 To Ws1.Range("B6000").End(xlUp).Row For J = 2 To Ws2.Range("A6000").End(xlUp).Row If I = J And Ws1.Name = Ws2.Name Then J = J + 1 ValInit = Ws1.Range("C" & I) AdresBarillet1 = Ws1.Range("A" & I) & " - " & Ws1.Range("B" & I) ValTrouv = Ws2.Range("C" & J) AdresBarillet2 = Ws2.Range("A" & J) & " - " & Ws2.Range("B" & J) If ValInit = "" Then GoTo 123 If ValTrouv = "" Then GoTo 123 If ValInit = ValTrouv Then _ Ws1.Range("F" & I) = "Doublon entre " & Ws1.Name & " - " & AdresBarillet1 & " & " & Ws2.Name & " - " & AdresBarillet2 And _ Ws2.Range("F" & J) = "Doublon entre " & Ws1.Name & " - " & AdresBarillet1 & " & " & Ws2.Name & " - " & AdresBarillet2 GoTo 123 123: Next J Next I End If Next Ws2 End If Next Ws1 Application.EnableEvents = True Balise1 End Sub
Est-ce que l'un d'entre vous aurait une idée ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 If ValInit = ValTrouv Then _ Ws1.Range("F" & I) = "Doublon entre " & Ws1.Name & " - " & AdresBarillet1 & " & " & Ws2.Name & " - " & AdresBarillet2 And _ Ws2.Range("F" & J) = "Doublon entre " & Ws1.Name & " - " & AdresBarillet1 & " & " & Ws2.Name & " - " & AdresBarillet2
je ne peux malheureusement vous partager le ficher car il contient des données confidentielles.
je suis certain de passer à coté de quelque chose mais je ne vois pas quoi...![]()
Partager