Lorsque vous modifiez des feuilles de calcul, vous remarquerez peut-être qu’une partie de votre travail est effectuée en fonction du travail que vous avez effectué auparavant. Par exemple, vous pouvez avoir une ligne de données que vous avez entrée dans une session Excel précédente. Dans cette session, vous devez copier cette ligne de données et l’utiliser comme base pour vos nouvelles données, mais avec quelques modifications.

Dans une telle situation, il serait bien d’avoir un moyen rapide d’entrer une ligne vide après la ligne actuelle et de copier les données de la ligne actuelle vers la nouvelle ligne vide. Il n’y a pas de commandes intrinsèques dans Excel pour ce faire, mais une macro peut le faire très facilement. Prenons l’exemple suivant:

Sub InsertCopyRow1()

ActiveCell.EntireRow.Select     Selection.Copy     Selection.Insert Shift:=xlDown End Sub

Pour utiliser la macro, tout ce que vous avez à faire est de sélectionner une cellule dans n’importe quelle ligne. Lorsque la macro est exécutée, un double de la ligne actuelle est inséré juste en dessous de la ligne dans laquelle vous vous trouvez.

Le seul problème avec cette solution est qu’elle laisse l’interface Excel un peu « brouillonne » (faute d’un meilleur mot). Une fois terminé, une ligne complète est toujours sélectionnée et la nouvelle ligne contient les « fourmis en marche »

chapiteau autour de lui.

Ce problème peut être résolu en incluant des commandes pour réduire la sélection et la déplacer vers un emplacement souhaité. Une autre façon consiste simplement à utiliser une macro différente qui repose sur différentes commandes VBA. La macro suivante insérera et copiera également une ligne, mais elle laisse la cellule que vous avez sélectionnée active:

Sub InsertCopyRow2()

ActiveCell.Offset(1, 0).EntireRow.Insert     ActiveCell.EntireRow.Copy ActiveCell.Offset(1, 0).EntireRow End Sub

_Note: _

Si vous souhaitez savoir comment utiliser les macros décrites sur cette page (ou sur toute autre page des sites ExcelTips), j’ai préparé une page spéciale qui comprend des informations utiles.

lien: / excelribbon-ExcelTipsMacros [Cliquez ici pour ouvrir cette page spéciale dans un nouvel onglet de navigateur].

ExcelTips est votre source pour une formation Microsoft Excel rentable.

Cette astuce (2042) s’applique à Microsoft Excel 97, 2000, 2002 et 2003. Vous pouvez trouver une version de cette astuce pour l’interface ruban d’Excel (Excel 2007 et versions ultérieures) ici:

link: / excelribbon-Inserting_and_Copying_Rows [Insertion et copie de lignes].