RECHERCHER ET REMPLACER

  • Initiateur de la discussion Jarod
  • Date de début
J

Jarod

Guest
Bonjour,


J'ai un probleme avec mes formules....

Je copie depuis ce matin de nombreuses formules en changeant simplement un element de la formule grace a la zone nom.

Sauf que maintenant, j'ai un message d'erreur qui me dit formule trop longue.

Merci de me venir en aide.

Jarod.
 

Pièces jointes

  • REMPLACER.xls
    38.5 KB · Affichages: 46
  • REMPLACER.xls
    38.5 KB · Affichages: 50
  • REMPLACER.xls
    38.5 KB · Affichages: 49
C

Creepy

Guest
Salut,

C'est normal tu as une limite lors de l'imbrication des SI. vJe n'ai plus le nombre mais tu sembles l'avoir atteind.

Le plus simple serait de faire une macro avec : select case

case range("B5").value="debitetat"
range("b5").value="Creditetat"
case range("B5").value="credietat"
range("b5").value="ok"

etc...

Tu peux aussi enlever des si dans ta formule

a+

Creepy
 
M

Moa

Guest
Salut !

En effet, tes formules avec "DEBITETAT", contiennent 1011 caractères.

Et les formules sont limitées à 1024 caractères, donc comme "CREDITETAT" contient une lettre de plus que "DEBITETAT", au moment où tu le remplace dans la formule, y'a un hic.

Tu as plusieurs solutions pour remédier à cela.

Soit tu raccourcis un nom.

Soit tu fais ta formule en deux parties dans deux cellules différentes, la deuxième reprenant juste la valeur de la première.

@ +

Moa
 
J

Jean-Marie

Guest
Bonjour

Creepy, il n'y a pas de si imbriqué dans la formule, Jarod utilise la fonction SOMME.SI(;;)

Met "BVIREMENTS" et "BA COMPTABILISER", dans deux cellules ou dans deux noms, et remplace les dans la formule par leur nouvelle référence, tu gagneras un peu de place.

Pour l'instant je n'ai de formule pour te simplifier la vie, et ne connaissant pas la constitution de ton tableau.

Bonne journée

@+Jean-Marie
 
M

Monique

Guest
Bonjour,

Cette formule avec des SOMME.SI additionnés
=SOMME.SI(F1:F3;"a";G1:G3)+SOMME.SI(F1:F3;"b";G1:G3)+SOMME.SI(H1:H3;"d";I1:I3)+SOMME.SI(H1:H3;"e";I1:I3)+SOMME.SI(J1:J3;"g";K1:K3)+SOMME.SI(J1:J3;"h";K1:K3)

peut être remplacée par du SOMMEPROD
=SOMMEPROD((((F1:F3="a")+(F1:F3="b"))*G1:G3)+(((H1:H3="d")+(H1:H3="e"))*I1:I3)+(((J1:J3="g")+(J1:J3="h"))*K1:K3))

Si je ne me suis pas trompée (pas évident, sans les données), ta formule donnerait :
=SOMMEPROD((((ETAT="BVIREMENTS")+(ETAT="BA COMPTABILISER"))*DEBITETAT)+(((ETAT1="BVIREMENTS")+(ETAT1="BA COMPTABILISER"))*DEBITETAT1)+(((ETAT2="BVIREMENTS")+(ETAT2="BA COMPTABILISER"))*DEBITETAT2)+(((ETAT3="BVIREMENTS")+(ETAT3="BA COMPTABILISER"))*DEBITETAT3)+(((ETAT4="BVIREMENTS")+(ETAT4="BA COMPTABILISER"))*DEBITETAT4)+(((ETAT5="BVIREMENTS")+(ETAT5="BA COMPTABILISER"))*DEBITETAT5)+(((ETAT6="BVIREMENTS")+(ETAT6="BA COMPTABILISER"))*DEBITETAT6)+(((ETAT7="BVIREMENTS")+(ETAT7="BA COMPTABILISER"))*DEBITETAT7)+(((ETAT8="BVIREMENTS")+(ETAT8="BA COMPTABILISER"))*DEBITETAT8)+(((ETAT9="BVIREMENTS")+(ETAT9="BA COMPTABILISER"))*DEBITETAT9)+(((ETAT10="BVIREMENTS")+(ETAT10="BA COMPTABILISER"))*DEBITETAT10))

Le plus simple serait quand même de donner des noms plus courts à tes plages.
 
J

Jarod

Guest
Merci Monique,

J'essaies cette formule dans la foulet.

ETAT est la plage que j'ai nommé et les autres noms correspondent aux commentaires.
Cela ne depend donc pas de moi.

Merci encore Monique. :eek:)
 

Discussions similaires

Réponses
5
Affichages
332
Réponses
1
Affichages
137

Statistiques des forums

Discussions
312 493
Messages
2 088 956
Membres
103 990
dernier inscrit
lamiadebz