
Excel VBA est un outil très puissant qui vous permet de copier des formules d'une feuille à une autre de manière programmée. Dans cet article, nous vous montrerons comment utiliser Excel VBA pour copier des formules vers une autre feuille.
Nous commencerons par créer une macro simple qui copiera une formule d'une cellule à une autre sur la même feuille. Nous modifierons ensuite la macro pour qu'elle copie la formule vers une feuille différente.

• Microsoft Excel installé
• Connaissances de base en VBA
• Feuille de calcul contenant des formules


Pour enregistrer une macro, suivez ces étapes :
• Ouvrez le classeur contenant la feuille avec les formules que vous souhaitez copier.
• Appuyez sur le bouton Enregistrer une macro dans l'onglet Développeur. Si vous ne voyez pas l'onglet Développeur, cliquez ici pour apprendre comment l'ajouter.
• Entrez un nom pour votre macro et choisissez une touche de raccourci si désiré.
• Cliquez sur OK.
• Sélectionnez la cellule contenant la formule que vous souhaitez copier.
• Appuyez sur Ctrl + C pour copier la cellule sélectionnée.
• Sélectionnez la cellule où vous souhaitez coller la formule copiée.
• Appuyez sur Ctrl + V pour coller la formule copiée.
• Appuyez sur le bouton Arrêter l'enregistrement dans l'onglet Développeur.
Votre macro est maintenant prête à être utilisée ! Pour l'exécuter, appuyez simplement sur la touche de raccourci que vous lui avez assignée, ou cliquez sur le bouton Macros dans l'onglet Développeur et sélectionnez votre macro dans la liste.

Vous pouvez également obtenir les mêmes résultats en écrivant quelques lignes de code VBA. Pour ce faire, suivez ces étapes :
• Ouvrez le classeur contenant la feuille avec les formules que vous souhaitez copier.
• Appuyez sur Alt + F11 pour ouvrir l'Éditeur Visual Basic.
• Cliquez sur Insérer > Module.
• Entrez le code suivant dans le module :
Code:
Sub CopierFormule()
Dim sourceRange As Range
Dim targetRange As Range
Set sourceRange = Range("A1") 'Changez A1 par la cellule contenant votre formule
Set targetRange = Range("B1") 'Changez B1 par la cellule où vous souhaitez coller la formule
targetRange.Formula = sourceRange.Formula
End Sub
• Appuyez sur F5 pour exécuter le code.
Votre formule devrait maintenant être copiée dans la cellule désirée !

La macro que nous avons enregistrée dans la section précédente copiera uniquement des formules dans la même feuille. Cependant, vous pouvez facilement la modifier pour copier des formules vers une autre feuille. Pour ce faire, suivez ces étapes :
• Ouvrez le classeur contenant la feuille avec les formules que vous souhaitez copier.
• Appuyez sur Alt + F11 pour ouvrir l'Éditeur Visual Basic.
• Double-cliquez sur votre macro dans la liste à gauche de l'écran. Le code de votre macro apparaîtra à droite.
• Trouvez la ligne de code suivante :
Code:
Set targetRange = Range("B1") 'Changez B1 par la cellule où vous souhaitez coller la formule
• Changez "B1" par la cellule sur l'autre feuille où vous souhaitez coller la formule, en utilisant ce format : SheetName!CellAddress. Par exemple, si vous souhaitez coller la formule dans la cellule B2 sur une feuille nommée "Sheet2", changez le code comme suit :
Code:
Set targetRange = Sheets("Sheet2").Range("B2")
• Appuyez sur F5 pour exécuter le code. Votre formule devrait maintenant être copiée sur l'autre feuille !

Après avoir lu cet article, vous devriez maintenant savoir comment copier des formules vers une autre feuille en utilisant Excel VBA. Vous pouvez utiliser la macro enregistrée telle quelle, ou la modifier pour l'adapter à vos besoins. Si vous souhaitez en savoir plus sur Excel VBA, consultez nos autres articles sur le sujet !
Dernière édition: