Bonjour à tous,
J'ai essayé d'obtenir le résultat attendu en modifiant la macro
avec ce code j'ai dans un premier temps le résultat attendu qui s'exécute mais très lentement et ensuite j'ai un plantage excel.
Pourriez-vous m'aider à le corriger s'il vous plaît ?
[Code]
Private Sub Worksheet_Change(ByVal Target As Range)
Dim der_ligne As Integer
Dim parcours_colonne As Integer
On Error Resume Next
der_colonne = derniere_colonne(Feuil1, 10)
Range("A11:AD18").Select
Selection.Copy
der_ligne = Range("A" & Rows.Count).End(xlUp).Row
Range("A" & der_ligne).Select
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
ligne = Target.Row
colonne = Target.Column
If colonne = 1 Then
For parcours_colonne = 2 To der_colonne
If (parcours_colonne) Mod 6 = 1 Then
parcours_colonne = parcours_colonne + 1
End If
Cells(ligne, parcours_colonne).Select
With Selection.Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:="=" & Cells(ligne, 1)
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With
Cells(ligne + 4, parcours_colonne).Select
With Selection.Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:="=" & Cells(ligne, 1)
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With
Next parcours_colonne
Cells(ligne, 1).Select
End If
End Sub