Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Target.Address(0, 0) = "C1" Then TaMacro: Cancel = True
End Sub
'exemple ta macro dans un module
Public Sub TaMacro()
Set MonDico = CreateObject("Scripting.Dictionary")
'
NoPremLigSource = 2: ColSource1$ = "A": ColSource2$ = "B"
NoLigDestin = 2: ColDestin$ = "C"
'
NoDernLigSource = Cells(Rows.Count, ColSource1$).End(xlUp).Row
R$ = ColDestin$ & NoLigDestin & ":" & ColDestin$ & NoDernLigSource
Range(R$) = ""
NoLig = NoPremLigSource
Do While NoLig <= NoDernLigSource
If Cells(NoLig, ColSource1$) <> "" Then
Var$ = Cells(NoLig, ColSource1$) & " " & Cells(NoLig, ColSource2$)
If Not MonDico.Exists(Var$) Then
MonDico.Add Var$, Var$
Cells(NoLigDestin, ColDestin$) = Var$: NoLigDestin = NoLigDestin + 1
End If
End If
NoLig = NoLig + 1
Loop
End Sub