Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
'la cellule où tu as fait le double clic s'appelle target
If Target.Count > 1 Then Exit Sub 'si + d'une cellule sélectionnée on quitte la macro
Application.ScreenUpdating = False 'pas d'affichage des actions donc plus rapide
'Toutes les variables doivent être déclarée
Dim i As Integer, derlig As Integer, mavar As Double, k As Integer
Dim j As Integer, ligne As Long, w1 As Workbook, fich As String, chemin As String
chemin = ActiveWorkbook.Path 'donne l'adresse du fichier en cours à la variable chemin
fich = chemin & "\" & Target.Value & ".xlsx" 'nom du fichier à ouvrir
If Target.Column = 10 Then 'si tu as double cliqué dans la colonne 10
Set w1 = Application.Workbooks.Open(fich) 'ouverture du fichier
derlig = w1.Worksheets("liste").Range("B34").End(xlUp).Row' recherche de la dernière ligne du fichier
mavar = 0 'remise à zero de la variable qui servira pour le total
For j = 8 To derlig 'boucle de la ligne 8 à la dernière ligne
ligne = Range("C" & Rows.Count).End(xlUp).Row + 1 ' recherche de la dernière ligne du fichier liste... +1 pour ecrire sur la ligne suivante
'copie des données
Range("A" & ligne).Value = w1.Worksheets("liste").Range("E1").Value
Range("B" & ligne).Value = w1.Worksheets("liste").Range("A" & j).Value
Range("C" & ligne).Value = w1.Worksheets("liste").Range("D" & j).Value
mavar = mavar + Range("C" & ligne).Value 'modification de la variable
Next
Range("B" & ligne + 1).Value = "Total:"
Range("C" & ligne + 1).Value = mavar
Range(Cells(ligne + 1, 2), Cells(ligne + 1, 3)).Interior.ColorIndex = 8 'colorie les cellules du total
w1.Close savechanges:=True 'fermeture du fichier sans sauvegarde
End If
If Target.Column = 4 Then 'si tu as double cliqué dans la colonne 4
Range("D" & Target.Row).Value = Range("F2").Value 'recopie la date
End If
Application.ScreenUpdating = True 'annule la commande sinon l'aplli ne marcherai plus
End Sub