Private Sub Worksheet_Activate()
Dim ncol%, tablo, d As Object, i&, resu(), x$, n&, j%
With Sheets("Source").[A1].CurrentRegion
ncol = .Columns.Count
If ncol < 21 Then ncol = 21
tablo = .Resize(, ncol) 'matrice, plus rapide
End With
'---liste des éléments concaténés---
Set d = CreateObject("Scripting.Dictionary")
For i = 2 To UBound(tablo)
If IsNumeric(CStr(tablo(i, 14))) Then d(tablo(i, 1) & Chr(1) & -tablo(i, 14) & Chr(1) & tablo(i, 21)) = ""
Next i
'---tableau des résultats---...