[Résolu] références d'une autre feuille lors d'une copie

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.
Avatar de l’utilisateur
kerinel
Membre hOOnoraire
Membre hOOnoraire
Messages : 108
Inscription : 04 avr. 2006 15:00

[Résolu] références d'une autre feuille lors d'une copie

Message par kerinel »

Bonjour,
je viens de voir un truc tres bizarre :
J'ai une feuille (recap) qui me permet de faire un récapitulatif des données calculées dans d'autres feuilles (A, B, C ).
Sur le feuille recap, j'ai une cellule (D12)qui reprend la valeur de la cellule B6 de la feuille A, la cellule voisine (E12)reprend la valeur de la B6 sur la feuille B et sa voisine(F12) la valeur de la cellule B6 sur la feuille C.
J'ai donc sur ma feuille 'recap' dans l'ordre les formules suivante :
D12 : ='A'.B6
E12 : ='B'.B6
F12 : ='C'.B6

Je fais une copie de ma feuille recap (qui s'appele recap_2) que je place avant ma feuille recap.
Or les formules sont devenues :
D12 : ='recap'.B6
E12 : ='A'.B6
F12 : ='B'.B6

Alors que je m'attendais a garder les memes references...
Quand je copie en plein milieu c'est encore plus le foutoir....
C'est un comportement normal ?

De meme, j'ai un diagramme inséré sur la feuille recap, construit a partir de cellules de la feuille recap. Après la copie le diagramme de la copie pointe sur la feuille orginale...

Bon vol
kerinel

OOo 2.1.0 sous XP
Dernière modification par kerinel le 15 déc. 2006 15:53, modifié 1 fois.
Jeff
GourOOu
GourOOu
Messages : 9628
Inscription : 18 sept. 2006 09:40
Localisation : France

Re: references vers autre feuille lors d'une copie de feuill

Message par Jeff »

kerinel a écrit :les formules sont devenues :
D12 : ='recap'.B6
E12 : ='A'.B6
F12 : ='B'.B6
J'en déduis donc que ta feuille Récap est en première position :)
kerinel a écrit :C'est un comportement normal ?
Je pense que dans ce cas là, Calc se conforme strictement au références relatives et il est vrai quand cas de copie de feuille, c'est un peu gênant...mais apparemment pas anormal.
Il faudrait que les concepteurs inclus une règle selon laquelle, en cas de copie de feuille, les références soient considérées comme absolues.
En cas de valeurs absolues, ($colonne$ligne) tout est pour le mieux.

Je jette un coup d'oeil sur les diagrammes ce soir, et je te dirai ce qui ce passe sous ma config.

A +

EDIT : finalement, j'ai testé maintenant. AMHA, pour la même raison : par défaut la plage de donnée du graphique est (elle) en valeur absolue, donc ne s'incrémente pas à la copie. Par contre, si l'on rentre une valeur relative pour cette plage de donnée, à la validation de l'assistant graphique, la plage passe automatiquement en valeur absolue, ce qui ne me semble pas normal (ou du moins prévisible et/ou pratique) ; en effet, si l'on fait une copie pour tester des valeurs, il serait bien que l'on ait le choix des données pour le graphique associé sans devoir en créer un autre.
Y-a-t'il une issue sur ça ???
Avatar de l’utilisateur
kerinel
Membre hOOnoraire
Membre hOOnoraire
Messages : 108
Inscription : 04 avr. 2006 15:00

Re: references vers autre feuille lors d'une copie de feuill

Message par kerinel »

Effectivement ma feuille recap est en premiere position :)
Jeff a écrit : Je pense que dans ce cas là, Calc se conforme strictement au références relatives et il est vrai quand cas de copie de feuille, c'est un peu gênant...mais apparemment pas anormal.
Euh, de mon point de vue c'est plus qu'anormal : tu donnes quoi comme specification si j'insere entre B et C ?
En tout cas le résultat est sans appel :

#REF !

ça fait un peu désordre...

Bon vol
kerinel
Jeff
GourOOu
GourOOu
Messages : 9628
Inscription : 18 sept. 2006 09:40
Localisation : France

Re: references vers autre feuille lors d'une copie de feuill

Message par Jeff »

kerinel a écrit :tu donnes quoi comme specification si j'insere entre B et C ?
Que Calc essais d'incrémenter sa valeur d'une feuille par rapport à une feuille qui n'existe pas...

De même tu peux faire ce test :
En A1 saisie =IT1

Puis copie à l'horizontal :
en colonne D -> #REF
J'en déduis que Calc ne trouvant pas de colonne IW (forcément), il mets cette valeur d'erreur.

#REF :Référence incorrecte (#REF! figure dans la cellule, et non Err:524)
Compilateur : résolution du nom descriptif d'une colonne ou d'une ligne impossible. Interpréteur : dans une formule, absence d'une colonne, ligne ou feuille contenant une cellule référencée.
Jeff
GourOOu
GourOOu
Messages : 9628
Inscription : 18 sept. 2006 09:40
Localisation : France

Message par Jeff »

A noter aussi que si tu fais un copier de la feuille Récap puis collage spécial sur la feuille Récap2 avec l'option Lier, Calc passe toutes tes formules en valeurs absolues :
=$récap.$D$12
=$récap.$E$12
=$récap.$F$12

Je ne suis pas étonné que le tableur essais de transformer les valeurs relatives et renvois une erreur si sa référence calculée est inexistante, par contre, le fait de ne pouvoir mettre la plage d'un graphique en valeur relative me parait plus contraignant.
Avatar de l’utilisateur
kerinel
Membre hOOnoraire
Membre hOOnoraire
Messages : 108
Inscription : 04 avr. 2006 15:00

Message par kerinel »

Oui oui j'avais bien compris que Calc ne trouve pas la cellule et pour cause.
Ce que je voulais savoir c'est avec cette optique relative, comment je peut definir une specification qui tienne la route (car la visiblement il y a un trou de spec...) :
quand copie feuille SI reference vers 3 feuilles derriere ET pas de feuille derriere ALORS ???
- repartir du debut (au risque de faire une reference croisée)
- repartir en sens inverse
- autre ?

D'ailleurs deplacer les feuilles ne change pas le "lien" d'une cellule faisant reference a une autre feuille. Par exemple si j'inverse A et B, dans recap je ne vois rien changer... C'est donc que le lien n'est pas aussi relatif que cela...

Bon en tout cas je fais ma copie juste apres ma feuille et c'est bon comme ça. Car ma feuille est en premiere position, si elle etait au milieu avec des references avant et apres... il faudrait d'abord la deplacer en premier ou en dernier et faire la copie juste apres ou juste avant. Pas simple et pas vraiment logique non ?

Bon vol
kerinel
Jeff
GourOOu
GourOOu
Messages : 9628
Inscription : 18 sept. 2006 09:40
Localisation : France

Message par Jeff »

Dans mes réponses, je pense que je t'ai embrouillé, donc je récapitule :

Concernant les valeurs absolues et relatives qui servent (qu')à la copie et qui ne sont là que pour incrémenter les valeurs de feuille, lignes et/ou colonne, voir l'aide.
Je pense que tu devrai mettre tes formules en valeur absolue pour que lors de copie elles ne varient pas.
Tj pour le même exemple que précédemment, si en A1 tu saisie =$IT$1 tu peux copier ça tranquille jusqu'en colonne IS, ta formule ne changera pas.
Pour passer de références relatives en références absolue -> Maj+F4
A chaque appuis tu as :

Code : Tout sélectionner

feuille. colonne ligne
$feuille. $colonne $ligne
$feuille. colonne $ligne
$feuille. $colonne ligne
$feuille. colonne ligne
feuille. $colonne $ligne
feuille. colonne $ligne
feuille. $colonne ligne
feuille. colonne ligne
le signe $ signifiant une référence absolue donc non incrémentée en cas de copie.

Pour les liens c'est tout à fait autre chose (je comprends pas le
lien n'est pas aussi relatif que cela
Avatar de l’utilisateur
kerinel
Membre hOOnoraire
Membre hOOnoraire
Messages : 108
Inscription : 04 avr. 2006 15:00

Message par kerinel »

Pour l'utilisation des $ pas de probleme, j'utilisais deja cela sous Excell et j'arrive bien a jongler entre les deux. Par contre je ne savais pas qu'on pouvait le faire aussi pour le onm de la feuille. Ce qui du coup effectivement ouvre beaucoup de possibilités. Et du coup ce n'est peut etre pas ausi bete que ça que lors d'une copie, on puisse garder la reference relative et non pas figée... Suffisait de le savoir :lol:

Pour "le le lien n'est pas aussi relatif" que cela je me suis mal exprimé j'aurais du dire "la reference n'est pas aussi relative que cela" :

Dans ma feuille recap : j'ai une cellule qui contient la formule
='A'.F10

si je deplace ma feuille A vers la fin c'est la feuille B qui vient a sa place et je devrais donc avoir dans ma cellule :
='B'.F10
puisque la reference est relative
Ce qui n'est pas le cas. J'ai toujours
='A'.F10

Or si je copie au mauvais endroit par contre je change...

Mmmh remarque je me rend compte en ecrivant que c'est la meme chose quand je deplace des cellules a l'interieur d'une feuille. Que les references vers ces celules soient relatives ou non elles sont maintenues... mais pas quand je copie.

Bon ben en fait il y a pas de probleme, il fallait juste que je comprenne comment ça marche et quelle est la logique du systeme :D

Bon désolé de t'avoir embeter pour rien. Je comprend vite mais il faut m'xpliquer longtemps :D

Encore merci
kerinel
Jeff
GourOOu
GourOOu
Messages : 9628
Inscription : 18 sept. 2006 09:40
Localisation : France

Message par Jeff »

Rassure toi, tu ne m'a pas embêté, sinon je n'aurai pas répondu... :)