Cellule de références relatives --> réf absolues

Résolu
Bouyax Messages postés 11 Statut Membre -  
Bouyax Messages postés 11 Statut Membre -
Bonjour,

A l'aide du logiciel SAP, je réalise un tableau en important des données. Je souhaite réaliser une mise en page spécifique qui ne fonctionne pas sur ce tableau puisque lorsque j'actualise les données la mise en page est écrasée. (Les feuilles de mise en forme de SAP ne fonctionne pas pour la mise en page que je désire)

J'ai donc créée une seconde feuille, dans laquelle j'ai repris chaque données des celulles de ma Feuille 1 avec un simple "=Feuill1!A1"

Le problème c'est que si j'actualise les données ou qu'une ligne s'ajoute, les celulles vont s'adapter en fonction de la feuille 1 et décaller les formules. Mon tableau dans la feuille 2 ne correspondra donc plus à mon tableau de la feuille 1.

Je souhaite donc transformer toute mes formules en référence absolues: "=Feuill1!A1"--> "=Feuill1!$A$1".

Le problème c'est que mon tableau fait 15 colonnes et 400 lignes, j'aimerais éviter de séléctionner chaque celulle une à une une et d'appuyer sur F4.

Merci d'avance.

PS: Après quelques recherches, je suis tombé sur une macro, qui en 2011 avait fonctionné pour un problème similaire, cependant elle ne veut pas fonctionner puisqu'il y a apparemment un problème dans le code:


Sub test1()

Dim c As Range
For Each c In Selection.SpecialCells(xlFormulas)
c.Formula = Application.ConvertFormula(c.Formula, xlA1, xlA1,
xlAbsolute)

Next c

End Sub

2 réponses

didibonf Messages postés 439 Statut Membre 96
 
Bonjour,
Le code fonctionne si on retire le saut de ligne :

Sub test1()

Dim c As Range
For Each c In Selection.SpecialCells(xlFormulas)
c.Formula = Application.ConvertFormula(c.Formula, xlA1, xlA1, xlAbsolute)

Next c

End Sub


Cordialement,
didibonf
0
didibonf Messages postés 439 Statut Membre 96
 
pour info il faut sélectionner toutes les cellules à modifier puis lancer la macro.
0
Bouyax Messages postés 11 Statut Membre
 
Au top ça marche, merci!
0
michel_m Messages postés 18903 Statut Contributeur 3 317
 
Bonjour

Option Explicit
'-------------------------------------
Sub convertir()
Dim Cell As Range
Set Cell = Sheets(2).Range("A1:C3")
Cell.Formula = Application.ConvertFormula(Cell.Formula, xlA1, xlA1, xlAbsolute)
End Sub


0
michel_m Messages postés 18903 Statut Contributeur 3 317
 
Excuse moi de t'avoir dérangé
0