Excel vous permet de modifier facilement des formules. Ce faisant, vous pouvez rapidement changer une référence de cellule ou une référence de plage de relative à absolue.

Que faire si vous avez un grand nombre de cellules dans lesquelles vous devez passer du référencement relatif au référencement absolu? Dans ce cas, la nature du problème est bien adaptée pour être résolue par une macro.

En utilisant la méthode ConvertFormula disponible dans VBA, vous pouvez facilement convertir une formule d’adressage relatif en adressage absolu. La courte macro suivante utilise cette méthode pour modifier la méthode d’adressage utilisée dans une plage de cellules:

Sub Relative2Absolute()

For Each c In Selection     If c.HasFormula = True Then         c.Formula = Application.ConvertFormula(c.Formula, _           xlA1, xlA1, xlAbsolute)

End If Next c End Sub

La clé du fonctionnement de cette macro réside bien sûr dans la méthode ConvertFormula. Le dernier paramètre utilisé par la méthode est – dans ce cas – xlAbsolute. Si vous souhaitez adapter la macro afin qu’elle passe à d’autres types d’adressage, vous pouvez remplacer xlAbsolute par xlRelative, xlAbsRowRelColumn ou xlRelRowAbsColumn. (Je suis sûr que vous pouvez comprendre le but de chaque constante par son nom.)

Il y a une autre chose à retenir en ce qui concerne la méthode ConvertFormula: elle a une longueur limite de 255 caractères. Cela signifie que si votre formule est très longue, il est possible que la méthode ne fonctionne pas comme vous le souhaitez. La meilleure façon de savoir si cela fonctionnera pour vos besoins est de le tester.

_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 (10738) s’applique à Microsoft Excel 2007, 2010, 2013, 2016, 2019 et Excel dans Office 365. Vous pouvez trouver une version de cette astuce pour l’ancienne interface de menu d’Excel ici:

link: / excel-Converting_from_Relative_to_Absolute [Conversion de relatif à absolu].