Cellule de références relatives --> réf absolues
Résolu
Bouyax
Messages postés
11
Date d'inscription
Statut
Membre
Dernière intervention
-
Bouyax Messages postés 11 Date d'inscription Statut Membre Dernière intervention -
Bouyax Messages postés 11 Date d'inscription Statut Membre Dernière intervention -
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
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
A voir également:
- Cellule de références relatives --> réf absolues
- Excel cellule couleur si condition texte - Guide
- Proteger cellule excel - Guide
- Aller à la ligne dans une cellule excel - Guide
- Diviser une cellule excel en deux horizontalement ✓ - Forum Excel
- Si cellule contient texte alors ✓ - Forum Excel
2 réponses
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
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
didibonf
Messages postés
419
Date d'inscription
Statut
Membre
Dernière intervention
96
pour info il faut sélectionner toutes les cellules à modifier puis lancer la macro.
Bouyax
Messages postés
11
Date d'inscription
Statut
Membre
Dernière intervention
Au top ça marche, merci!