Public dico1 As Object, dico2 As Object 'mémorise les variables
Function Doublon1(txt As String) As Boolean
Application.Volatile
Doublon1 = dico2.exists(txt)
End Function
Function Doublon2(txt As String) As Boolean
Application.Volatile
Doublon2 = dico1.exists(txt)
End Function
Sub Calcul_dico1()
Dim tablo, i&
With Sheets("Base1").[B1].CurrentRegion 'à adapter
tablo = .Value
Set dico1 = CreateObject("Scripting.Dictionary")
For i = 2 To UBound(tablo)
dico1(tablo(i, 1) & tablo(i, 2)) = ""
Next
.Columns(3).EntireColumn.ClearContents 'RAZ
.Columns(3) = "=Doublon1(RC[-2]&RC[-1])"
End With
End Sub
Sub Calcul_dico2()
Dim tablo, i&
With Sheets("Base2").[C1].CurrentRegion 'à adapter
tablo = .Value
Set dico2 = CreateObject("Scripting.Dictionary")
For i = 2 To UBound(tablo)
dico2(tablo(i, 1) & tablo(i, 2)) = ""
Next
.Columns(3).EntireColumn.ClearContents 'RAZ
.Columns(3) = "=Doublon2(RC[-2]&RC[-1])"
End With
End Sub