Je suis novice en VBA et je n'arrive pas a programmer des copier/coller automatique des données.
Je veux tenir à jour un fichier, et j'ai une feuille globale et apres de multipes feuilles en fonction de leur statut.
J'ai besoin de repérer les lignes du tableau global en fonction de la valeur d'une des colonnes (mon critère étant dans la colonne Q), de copier une partie des lignes (les 14 premières colonnes) et de les coller dans la feuille correspondant à son statut.
Je voudrais que les donner se classe automatiquement par ordre alphabétique de la premiere colone.
Je joint le code que j'ai commencer a faire mais qui ne fonctionne pas!!!
je n'ai pas de message d'erreur mais rien ne se fait!!
- Code: Tout sélectionner
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("Q2:Q65536")) Is Nothing Then
If Target.Value = "USS Enfant" Then
With Sheets("USS Enfant")
LigVide = .Range("A65536").End(xlUp).Row + 1
.Cells(LigVide, 2) = Target.Offset(0, -13).Value
.Cells(LigVide, 3) = Target.Offset(0, -12).Value
.Cells(LigVide, 4) = Target.Offset(0, -11).Value
.Cells(LigVide, 5) = Target.Offset(0, -10).Value
.Cells(LigVide, 6) = Target.Offset(0, -9).Value
.Cells(LigVide, 7) = Target.Offset(0, -8).Value
.Cells(LigVide, 8) = Target.Offset(0, -7).Value
.Cells(LigVide, 9) = Target.Offset(0, -6).Value
.Cells(LigVide, 10) = Target.Offset(0, -5).Value
.Cells(LigVide, 11) = Target.Offset(0, -4).Value
.Cells(LigVide, 12) = Target.Offset(0, -3).Value
.Cells(LigVide, 13) = Target.Offset(0, -2).Value
.Cells(LigVide, 14) = Target.Offset(0, -1).Value
End With
End If
End Sub
Un truc que je ne sais pas faire et qui m'arrangerais encore plus et que je ne sais pas comment présenté non plus c'est que si le statut d'une ligne change, cela supprime la ligne dans la feuille ou il était avant et le mette dans la nouvelle feuille!!
Si quelqu'un peu m'aider ca serais super
Merci d'avance pour votre aide