[RESOLU] incrémenter une formule avec saut de lignes

Titou37

XLDnaute Nouveau
Bonjour,

J'ai un tableau contenant des cellules fusionnées verticalement 3 par 3. la formule contenue dans la première cellule est la suivante :
=STXT('Détail des séances'!$A7;CHERCHE(" ";'Détail des séances'!$A7;1)+1;1)&"."
je souhaiterais obtenir 3 lignes plus bas :
=STXT('Détail des séances'!$A8;CHERCHE(" ";'Détail des séances'!$A8;1)+1;1)&"."
au lieu de ça j'obtiens :
=STXT('Détail des séances'!$A10;CHERCHE(" ";'Détail des séances'!$A10;1)+1;1)&"."
Ce qui est normal compte tenu du fait qu'Excel adapte les références (relatives) au déplacement.

J'ai tenté de modifier ma formule initiale avec DECALER, ADRESSE, LIGNE, COLONNE et bien d'autres mais je dois mal m'y prendre et je n'arrive pas à mes fins.

Mes recherches m'ont amené à tester également la solution proposée dans ce post : https://www.excel-downloads.com/threads/tirer-une-formule-vers-le-bas-en-sautant-des-lignes.167901/

Mais je n'obtiens pas le résultat escompté.

Je vous joins un exemple qui sera plus clair qu'un long discours.

Merci d'avance à tous pour votre aide.
 

Pièces jointes

  • exemple.xlsx
    21.2 KB · Affichages: 60
  • exemple.xlsx
    21.2 KB · Affichages: 58
  • exemple.xlsx
    21.2 KB · Affichages: 62
Dernière édition:

Modeste

XLDnaute Barbatruc
Re : incrémenter une formule avec saut de lignes

Bonjour Titou37,

Puisque tu identifies le problème (ces fichues cellules fusionnées) et plutôt que d'essayer de contourner la difficulté qu'elles amènent, pourquoi ne pas simplement ... les éviter? :confused:
Concrètement, dans ton fichier, à quoi servent-elles?

[Edit:] Oupsss! pas rafraîchi! Désolé!
Si on trouve une solution pour que la "présentation soit identique, sans cellules fusionnées, tu prends ... ou pas?
 
Dernière édition:

Caillou

XLDnaute Impliqué
Re : incrémenter une formule avec saut de lignes

Re, re,

La formule pourrait peut etre ressembler à ceci :
=STXT(INDIRECT("'Détail des séances'!$A"&6+ENT(LIGNE()/3)+1);CHERCHE(" ";INDIRECT("'Détail des séances'!$A"&6+ENT(LIGNE()/3)+1))+1;1)&"."

A vérifier

Caillou
 

Titou37

XLDnaute Nouveau
Re : incrémenter une formule avec saut de lignes

Caillou,

J'ai testé ta proposition, ça fonctionne dans les cellules fusionnées. Trop fort !

Je ne suis pas sûr de bien comprendre le raisonnement suivi par la formule mais le résultat est là ! Si tu peux m'expliquer car si j'ai bien saisi le principe, le calcul du décalage m'étonne.;)

J'ai même réussi à l'adapter car dans mon tableau réel le premier calcul à faire est en C8 et la formule ci-dessous fonctionne en final :
'=STXT(INDIRECT("'Détail des séances'!$A"&4+ENT(LIGNE()/3)+1);CHERCHE(" ";INDIRECT("'Détail des séances'!$A"&4+ENT(LIGNE()/3)+1))+1;1)&"."

C'est super, encore merci pour ta réactivité et ta précieuse aide.

Je te joins le fichier avec ta formule modifiée à tout hasard.

Titou37
 

Pièces jointes

  • exemple.xlsx
    24.7 KB · Affichages: 56
  • exemple.xlsx
    24.7 KB · Affichages: 59
  • exemple.xlsx
    24.7 KB · Affichages: 64

Caillou

XLDnaute Impliqué
Re : incrémenter une formule avec saut de lignes

Re,

Je ne suis pas sûr de bien comprendre le raisonnement suivi par la formule mais le résultat est là ! Si tu peux m'expliquer car si j'ai bien saisi le principe, le calcul du décalage m'étonne.
Moi aussi, ça m'étonne!

Explications :
INDIRECT("'Détail des séances'!$A"&6+ENT(LIGNE()/3)+1)

INDIRECT permet de préciser une référence comme chaine de caractères.

Le décalage:
6+ENT(LIGNE()/3)+1 signifie 6+Partie entière du (n° de ligne/3)+1

Donc si je suis en ligne 2 et que je veux désigner la ligne 7 : 6+ENT(2/3)+1=6+0+1=7
Donc si je suis en ligne 5 et que je veux désigner la ligne 8 : 6+ENT(5/3)+1=6+1+1=8
Donc si je suis en ligne 8 et que je veux désigner la ligne 9 : 6+ENT(8/3)+1=6+2+1=9

CQFD

Caillou
 

Discussions similaires