Bonjour, je sollicite de l'aide car je n'y arrive pas.
Voilà une macro qui fonctionne, fournie par un membre du forum🙂🙂🙂:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim lig, derlig, num1 As Integer
If Target.Count > 1 Then Exit Sub
If Target.Value = "" Then Exit Sub
If Target.Column = 27 Then
lig = Target.Row
derlig = Sheets("Ordonnancier").Range("A65500").End(xlUp).Row + 1
Sheets("Ordonnancier").Cells(derlig, 2).Value = Cells(lig, 2).Value
' tenir compte des 2 colonnes cachées 18 à 24 au lieu de 17 à 23
Sheets("Ordonnancier").Cells(derlig, 3).Value = Cells(lig, 3).Value
Sheets("Ordonnancier").Cells(derlig, 4).Value = Cells(lig, 10).Value
Sheets("Ordonnancier").Cells(derlig, 5).Value = Cells(lig, 9).Value
Sheets("Ordonnancier").Cells(derlig, 6).Value = Cells(lig, 12).Value
Sheets("Ordonnancier").Cells(derlig, 7).Value = Cells(lig, 11).Value
Sheets("Ordonnancier").Cells(derlig, 8).Value = Cells(lig, 20).Value
Sheets("Ordonnancier").Cells(derlig, 9).Value = Cells(lig, 26).Value
Sheets("Ordonnancier").Cells(derlig, 10).Value = Cells(lig, 8).Value
Sheets("Ordonnancier").Cells(derlig, 11).Value = Cells(lig, 21).Value
Sheets("Ordonnancier").Cells(derlig, 12).Value = Cells(lig, 22).Value
Sheets("Ordonnancier").Cells(derlig, 13).Value = Cells(lig, 23).Value
Sheets("Ordonnancier").Cells(derlig, 14).Value = Cells(lig, 24).Value
Sheets("Ordonnancier").Cells(derlig, 15).Value = Cells(lig, 25).Value
Sheets("Ordonnancier").Cells(derlig, 1).Value = ActiveSheet.Name
num1 = Sheets("Ordonnancier").Cells(derlig - 1, 16).Value
Sheets("Ordonnancier").Cells(derlig, 16).Value = num1 + 1
End If
End Sub
Dans la même commande, comment passer de:
If Target.Column = 27 Then
Sheets("Ordonnancier").Cells(derlig, 1).Value = ActiveSheet.Name
à:
If Target.Column = 20 Then
Sheets("Nominatif").Cells(derlig, 1).Value = ActiveSheet.Name,
De telle manière que lorsque les cellules de la colonne 27 seront renseignées, l'information sera copiée dans la feuille "Ordonnancier" et lorsque les cellules de la colonne 20 seront renseignées l'information sera copiée dans la feuille "Nominatif".
Autrement dit comment compléter la première commande qui fonctionne trés bien ou faire une autre commande identique dans la même feuille.
Merci beaucoup.
Voilà une macro qui fonctionne, fournie par un membre du forum🙂🙂🙂:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim lig, derlig, num1 As Integer
If Target.Count > 1 Then Exit Sub
If Target.Value = "" Then Exit Sub
If Target.Column = 27 Then
lig = Target.Row
derlig = Sheets("Ordonnancier").Range("A65500").End(xlUp).Row + 1
Sheets("Ordonnancier").Cells(derlig, 2).Value = Cells(lig, 2).Value
' tenir compte des 2 colonnes cachées 18 à 24 au lieu de 17 à 23
Sheets("Ordonnancier").Cells(derlig, 3).Value = Cells(lig, 3).Value
Sheets("Ordonnancier").Cells(derlig, 4).Value = Cells(lig, 10).Value
Sheets("Ordonnancier").Cells(derlig, 5).Value = Cells(lig, 9).Value
Sheets("Ordonnancier").Cells(derlig, 6).Value = Cells(lig, 12).Value
Sheets("Ordonnancier").Cells(derlig, 7).Value = Cells(lig, 11).Value
Sheets("Ordonnancier").Cells(derlig, 8).Value = Cells(lig, 20).Value
Sheets("Ordonnancier").Cells(derlig, 9).Value = Cells(lig, 26).Value
Sheets("Ordonnancier").Cells(derlig, 10).Value = Cells(lig, 8).Value
Sheets("Ordonnancier").Cells(derlig, 11).Value = Cells(lig, 21).Value
Sheets("Ordonnancier").Cells(derlig, 12).Value = Cells(lig, 22).Value
Sheets("Ordonnancier").Cells(derlig, 13).Value = Cells(lig, 23).Value
Sheets("Ordonnancier").Cells(derlig, 14).Value = Cells(lig, 24).Value
Sheets("Ordonnancier").Cells(derlig, 15).Value = Cells(lig, 25).Value
Sheets("Ordonnancier").Cells(derlig, 1).Value = ActiveSheet.Name
num1 = Sheets("Ordonnancier").Cells(derlig - 1, 16).Value
Sheets("Ordonnancier").Cells(derlig, 16).Value = num1 + 1
End If
End Sub
Dans la même commande, comment passer de:
If Target.Column = 27 Then
Sheets("Ordonnancier").Cells(derlig, 1).Value = ActiveSheet.Name
à:
If Target.Column = 20 Then
Sheets("Nominatif").Cells(derlig, 1).Value = ActiveSheet.Name,
De telle manière que lorsque les cellules de la colonne 27 seront renseignées, l'information sera copiée dans la feuille "Ordonnancier" et lorsque les cellules de la colonne 20 seront renseignées l'information sera copiée dans la feuille "Nominatif".
Autrement dit comment compléter la première commande qui fonctionne trés bien ou faire une autre commande identique dans la même feuille.
Merci beaucoup.