[Résolu] Décalage de pages OU variable dans une formule

Discussions à propos du tableur Calc.
Les questions sur les macros doivent être postées dans la section dédiée en dessous.

Modérateur : Vilains modOOs

Règles du forum
Cette section est uniquement dédiée au tableur Calc. Vous ne devez pas poster ici de questions sur les macros mais utiliser la section éponyme.
Azollyx
Fraîchement OOthentifié
Messages : 3
Inscription : 02 mai 2007 16:44

[Résolu] Décalage de pages OU variable dans une formule

Message par Azollyx »

Bonjour à tous,
ma question concerne les formules.

En fait, je veux accéder à la cellule D32 de la page test1 donc j'ai

Code : Tout sélectionner

=test1.$D$32
et maintenant je voudrais que le nom de page soit automatiquement modifié lorsque je la "décale" (par l'intermédiaire du petit rectangle noir en bas à droite de la cellule) au sein de la même page (ça marche quand je la copie sur une autre page).
Pour cela, j'ai deux possibilités :
- un décalage par "série" (genre test1 puis test2, test3...) ;
- un décalage par le contenu d'une autre cellule (autrement dit, un nom de page dynamique) : le nom de la page qui devra être pointé pourrait être contenu dans une autre cellule (genre An où n représente la ligne courrante), je veux pointé sur '`page de nom donné par An`.$D$32`.

Merci de l'attention que vous m'apporterez. :)

Azollyx.
PS : s'il y a des pogrammeurs parmis vous, manifestez-vous, je pense que cela me permettrait de simplifier les notations.
Dernière modification par Azollyx le 02 mai 2007 18:05, modifié 1 fois.
OpenOffice.org 2.0.4 (Mac OS X)
Jeff
Grand Maître de l'OOffice
Grand Maître de l'OOffice
Messages : 10009
Inscription : 18 sept. 2006 09:40
Localisation : France

Message par Jeff »

Bonjour,

Ce que tu appelle "décaler avec le petit rectangle noir" est une recopie.
Si, dans ta formule, tu as des références absolues avec des $, ces références ne sont pas incrémentées ; par exemple =$A$1 recopié donne toujours le contenu de A1.
Par contre =A1 recopié verticalement donne A2, A3 etc...

Pour ce que tu veux faire, d'après ce que j'ai compris, je te suggère une fonction INDIRECT qui s'incrémente avec une fonction LIGNE.
Par exemple saisi en B1 :

Code : Tout sélectionner

=INDIRECT("Feuille"&LIGNE()&".A1")
donne le contenu de Feuille1 A1.
Si tu recopie à la verticale, se sera Feuille2 A1, Feuille3 A1 etc...le numéro de feuille sera incrémenté par la fonction LIGNE qui donne le n° de ligne courante.

A + :wink:
À lire avant tout !

Pour télécharger Apache OpenOffice

AOO 4.1.16 / Debian 13 "Trixie" / Xfce
AOO 4.1.15 / Debian 11 "Bullseye" / Cinnamon
Azollyx
Fraîchement OOthentifié
Messages : 3
Inscription : 02 mai 2007 16:44

Message par Azollyx »

Merci, cela fait effectivement ce que je veux. ^^
OpenOffice.org 2.0.4 (Mac OS X)
Jeff
Grand Maître de l'OOffice
Grand Maître de l'OOffice
Messages : 10009
Inscription : 18 sept. 2006 09:40
Localisation : France

Message par Jeff »

Quelle promptitude à mettre la balise [Résolu], on reconnait là que tu as bien potassé les règles du forum ! :D

En complément d'information, si tu veux recopier par la poignée de recopie (le carré noir en bas à droite de chaque cellule) à l'horizontal, il suffit d'adapter la formule précédente, toujours dans le cas d'une saisie en B1 (ou en colonne B) :

Code : Tout sélectionner

=INDIRECT("Feuille"&COLONNE()-1&".A1")
La fonction COLONNE placée en colonne B renvarra 2, c'est pour cela que je la diminue de 1 ensuite. Lors d'une recopie horizontale, l'indice -1 gardera cette particularité de tomber sur le numéro de feuille voulue.
Ainsi, où que soit placé ta formule, tu peux ajuster l'indice renvoyer par la fonction COLONNE (ou par la fonction LIGNE).

Je profite de ce post pour te souhaiter la bienvenue sur ce forum.


A + :wink:
À lire avant tout !

Pour télécharger Apache OpenOffice

AOO 4.1.16 / Debian 13 "Trixie" / Xfce
AOO 4.1.15 / Debian 11 "Bullseye" / Cinnamon
Azollyx
Fraîchement OOthentifié
Messages : 3
Inscription : 02 mai 2007 16:44

Message par Azollyx »

Merci. :)
OpenOffice.org 2.0.4 (Mac OS X)