jprieux
Nouveau membre
Bonjour,
Me revoilà avec une question de "nioubi" : Dans une formulaire créer sous Excel, je souhaite copier une ligne particulière lorsque l'utilisateur coche une case.
Pour ça, pas de problème, même si mon code n'est pas très "propre", ça fonctionne :
[cpp]
Sub plus1()
'
' Ajoute un additif
'
'
Rows("41:41").Select
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
Range("I40:AC40").Select
Selection.Copy
Range("I41").Select
ActiveSheet.Paste
Range("I40:L40").Select
Application.CutCopyMode = True
Selection.Copy
Range("I41:L41").Select
ActiveSheet.Paste
Range("U40:X40").Select
Application.CutCopyMode = True
Selection.Copy
Range("U41:X41").Select
ActiveSheet.Paste
End Sub
[/cpp]
Maintenant, le vrai problème, c'est que en fonction de lignes qui auraient pu être insérées par cette même méthodes, mais plus haut dans le formulaire (par exemple au niveau de la Row 34), je ne vais plus copier la ligne que je souhaitais, qui se trouvait être la Row41, mais qui est maintenant en 42. :fou:
Donc, ma question est : comment puis-je copier une ligne, quelque soit sa position dans la feuille Excel ?
Il y en a qui vont peut être trouver ça simple (et tant mieux parce qu'ils vont pouvoir m'aider), mais moi je bloque.
D'avance, merci à tous les contributeurs !
Me revoilà avec une question de "nioubi" : Dans une formulaire créer sous Excel, je souhaite copier une ligne particulière lorsque l'utilisateur coche une case.
Pour ça, pas de problème, même si mon code n'est pas très "propre", ça fonctionne :
[cpp]
Sub plus1()
'
' Ajoute un additif
'
'
Rows("41:41").Select
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
Range("I40:AC40").Select
Selection.Copy
Range("I41").Select
ActiveSheet.Paste
Range("I40:L40").Select
Application.CutCopyMode = True
Selection.Copy
Range("I41:L41").Select
ActiveSheet.Paste
Range("U40:X40").Select
Application.CutCopyMode = True
Selection.Copy
Range("U41:X41").Select
ActiveSheet.Paste
End Sub
[/cpp]
Maintenant, le vrai problème, c'est que en fonction de lignes qui auraient pu être insérées par cette même méthodes, mais plus haut dans le formulaire (par exemple au niveau de la Row 34), je ne vais plus copier la ligne que je souhaitais, qui se trouvait être la Row41, mais qui est maintenant en 42. :fou:
Donc, ma question est : comment puis-je copier une ligne, quelque soit sa position dans la feuille Excel ?
Il y en a qui vont peut être trouver ça simple (et tant mieux parce qu'ils vont pouvoir m'aider), mais moi je bloque.
D'avance, merci à tous les contributeurs !