Empecher ma formul de changer dans une cellule [Résolu/Fermé]

Signaler
Messages postés
5
Date d'inscription
lundi 15 janvier 2018
Statut
Membre
Dernière intervention
16 janvier 2018
-
Messages postés
8271
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
3 décembre 2020
-
Bonjour,


Je cherche actuellement le moyen d’empêcher excel de modifier la formule dans des cellules.

Par exemple:
=SI(Set!$J$1=9,0,SI(Set!C$8=$B$4,PCS!C8,0))
dans cette formule je voudrais que même si je supprime la feuille Set, ma formule ne se change pas en =SI(#REF!$J$1=9,0,SI(#REF!B8=$B$4,PCS!B3,0))

Cordialement Pierre43-


2 réponses

Messages postés
4148
Date d'inscription
mardi 5 février 2013
Statut
Membre
Dernière intervention
25 février 2019
1 328
Bonjour

A partir du moment ou tu supprimes quelque chose qui concerne ta formule,celle-ci s'en trouve modifiée.
Pour moi il n'existe pas de solution.
Cordialement
Messages postés
5
Date d'inscription
lundi 15 janvier 2018
Statut
Membre
Dernière intervention
16 janvier 2018

Merci de la réponse ;), je vais quand même continuer mes recherches
Messages postés
8271
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
3 décembre 2020
1 534
Bonjour,

Peux-tu développer dans quel but tu cherches « le moyen d’empêcher excel de modifier la formule ... »???

Comme tous les tableurs, Excel calcule des formules "en temps réel".
Étant donné que la feuille n'existe plus, la formule ne peut plus y faire référence, d'où la mise en place des #Ref!.

Il existe un moyen simple de conserver la formule, en faisant en sorte qu'elle ne soit plus calculée :
Mettre la cellule au format Texte puis F2 et Entrée

On peut réactiver le calcul de la formule en remettant la cellule au format ad hoc puis F2 et Entrée
Cordialement
Patrice
Messages postés
5
Date d'inscription
lundi 15 janvier 2018
Statut
Membre
Dernière intervention
16 janvier 2018

t'a solution marche le problème c'est le nombre de cellule que je dois changé est trop grand pour cette manipulation,

En bref, j'ai un tableau sur la première feuille de mon classeur qui traite les données des 3 feuilles suivante. Cela marche pour les feuilles déjà présentes (j'en utilise 3), mais tout les jours un ordinateur sur machine transmet les informations qu'il a traité ce jour, donc je dois changer les 3 autres feuilles pour obtenir les info du lot que je souhaite, mais le problème es que je ne peux les changé sans que les formules que j'ai rentré dans le premier tableau se trouve modifiées par excel.
Donc, je cherche une solution pour que la formule ne se trouve pas modifier, le temps de ce changement.


Je ne sais pas si tu a bien compris mon explication :) j'ai beaucoup de mal à m’exprimer et mon orthographe dois te piqué les yeux je m'en excuse d'avance.
Messages postés
8271
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
3 décembre 2020
1 534
Dans ce cas il faut utiliser indirect() voici une méthode générique pour remplacer les adresses dans ta formule et pouvoir tirer la formule :
=SI(INDIRECT("Set!" & ADRESSE(LIGNE($J$1);COLONNE($J$1);1))=9;0;SI(INDIRECT("Set!" & ADRESSE(LIGNE($J$1);COLONNE($J$1);1))=$B$4;INDIRECT("PCS!" & ADRESSE(LIGNE(C8);COLONNE(C8);4));0))

ADRESSE() permet de générer une formule "tirable".
Messages postés
5
Date d'inscription
lundi 15 janvier 2018
Statut
Membre
Dernière intervention
16 janvier 2018

Merci de ta réponse, j'ai pas trop compris pour quoi tu a mis tout sa dans la formule, donc sa a donné =SI(INDIRECT("Set!J1")=9,0,SI(INDIRECT("Set!C8")=B4,INDIRECT("PCS!C8"),0))
Je n'y serais jamais arrivé sans vous encore merci ;)
Messages postés
5
Date d'inscription
lundi 15 janvier 2018
Statut
Membre
Dernière intervention
16 janvier 2018

J'ai mis un macro avec votre première façon de faire mais la manipulation final était plus compliqué, même si il suffisais d'un seul curseur.
Messages postés
8271
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
3 décembre 2020
1 534
« j'ai pas trop compris pour quoi tu a mis tout sa dans la formule »Pourtant je te l'ai répété 2 fois :
... et pouvoir tirer la formule
ADRESSE() permet de générer une formule "tirable"

Si tu n'as pas besoin de tirer la formule, tu peux évidement te passer d'ADRESSE().