Bonjour,
Je désire déplacer dans Calc un ensemble de cellules (ou même une
cellule), mais en conservant les formules. J'ai essayé divers "collages
spéciaux" sans succès.
Comment faire ?
Bonjour,
Et pourquoi avoir essayé des collages spéciaux ?
Chez moi, le collage "normal" (ctrl+c puis ctrl+v) fonctionne très bien et copie les formules et non pas les valeurs ; bien entendu, les références sont "incrémentées" lors du déplacement, autrement dit, si en A3 j'ai la formule "=A1*A2", si je copie la cellule A3, que je me rends en C8 et que je colle, je vais obtenir "=C6*C7".
Si le problème, c'est d'avoir une copie sans l'incrémentation, là, il faut travailler non pas sur la copie, mais sur la formule et placer un "$" devant chaque élément (lettre de la colonne et numéro de la ligne) désignant chaque cellule qui ne doit pas être incrémentée ; toujours dans mon exemple ci-dessus si ma formule initiale est "=A$1*$A2" et que je la copie en C8, je vais obtenir "=C$1*$A7" ; si j'avais voulu que ma formule pointe toujours sur A1, il aurait fallu que j'entre dans ma formule de départ "=$A$1*A2" par exemple.
Pour revenir à la question de départ, telle que je l'ai comprise, quand on va dans les collages spéciaux, dans la colonne "Sélection" de la boîte de dialogue "Collage spécial", il faut, soit cocher la case "Tout insérer" soit, au minimum, cocher la case "Formules".
Ou alors il y a quelque chose que je ne comprends pas dans la question ?
Espérant avoir aidé,
A+
Et pourquoi avoir essayé des collages spéciaux ?
Parce que le collage normal ne marche pas pour ça, il a une autre
fonction.
Chez moi, le collage "normal" (ctrl+c puis ctrl+v) fonctionne très bien et copie les formules et non pas les valeurs ; bien entendu, les références sont "incrémentées" lors du déplacement,
Voilà.
Si le problème, c'est d'avoir une copie sans l'incrémentation, là, il
faut travailler non pas sur la copie, mais sur la formule et placer
un "$" devant chaque élément
Oui, mais si j'ai 100 cellules avec des formules complexes, c'est
dissuasif. Je désire simplement les déplacer.
Pour revenir à la question de départ, telle que je l'ai comprise,
quand on va dans les collages spéciaux, dans la colonne "Sélection"
de la boîte de dialogue "Collage spécial", il faut, soit cocher la
case "Tout insérer" soit, au minimum, cocher la case "Formules".
J'ai essayé tous les (dé)cochage, sans succès.
Merci d'avoir essayé 
Bonjour,
Et pourquoi avoir essayé des collages spéciaux ?
Parce que le collage normal ne marche pas pour ça, il a une autre
fonction.Chez moi, le collage "normal" (ctrl+c puis ctrl+v) fonctionne très bien et copie les formules et non pas les valeurs ; bien entendu, les références sont "incrémentées" lors du déplacement,
Voilà.
Si le problème, c'est d'avoir une copie sans l'incrémentation, là, il
faut travailler non pas sur la copie, mais sur la formule et placer
un "$" devant chaque élémentOui, mais si j'ai 100 cellules avec des formules complexes, c'est
dissuasif. Je désire simplement les déplacer.Pour revenir à la question de départ, telle que je l'ai comprise,
quand on va dans les collages spéciaux, dans la colonne "Sélection"
de la boîte de dialogue "Collage spécial", il faut, soit cocher la
case "Tout insérer" soit, au minimum, cocher la case "Formules".J'ai essayé tous les (dé)cochage, sans succès.
Merci d'avoir essayé
Oui, enfin là, en même temps, c'était une réponse à la question du copiage AVEC INCREMENTATION (qui était la question telle que je l'avais comprise), donc tu pouvais essayer tous les décochages que tu voulais, ça n'aurait pas répondu à ta question ; et d'un coup, je m'aperçois que j'ai répondu à côté de la question (pas loin, mais à côté quand-même) : j'ai fait mes tests sur du copier/coller alors que tu as parlé de "déplacer".
Et du coup, une question me vient ; tu as parlé des collages, d'accord mais tu n'as pas parlé de ce que tu avais fait AVANT de coller ; tu as copié ou tu as coupé ?
Normalement puisqu'il s'agit de "déplacer" tu es supposé avoir coupé et là, je ne vois pas ce qui te gêne dans le comportement.
Prenons un exemple :
- en A1, une valeur ;
- en A2, une valeur ;
- en A3 la formule sur A1 et A2 (du genre =A1*A2)
Si je sélectionne A2 et A3, que je fais un copier (ctrl+c), que je me déplace en E11 et que je fais un coller (ctrl+v), j'obtiens le résultat suivant :
- en A1, toujours la même valeur ;
- en A2 toujours la même valeur ;
- en A3, toujours la même formule (=A1*A2) ;
- en E10, cellule vide ;
- en E11, une valeur (la même qu'en A2) ;
- en E12, une formule donnant un résultat nul, à savoir (=E10*E12).
Avec un "copier", la formule a donc été incrémentée ; toutes les références à des cellules ont été modifiées, que ces cellules aient été ou non dans la sélection ;
Maintenant, si je sélectionne de nouveau A2 et A3, que je fais un couper (ctrl+x) , que je me déplace en F11 et que je fais un coller (ctrl+v), j'obtiens le résulta suivant :
- en A1, toujours la même valeur ;
- en A2, une cellule vide ;
- en A3, une cellule vide ;
- en E10, une cellule vide ;
- en E11, une valeur, celle qui se trouvait avant en A2 ;
- en E12, une formule donnant le même résultat qu'auparavant et qui est rédigée ainsi : = A1*F11
Avec un "couper", la formule n'a donc été que partiellement incrémentée ; seules les références à des cellules qui étaient comprises dans la sélection ont été modifiées, les références à des cellules non coupées sont demeurées intactes.
Donc, Calc fait bien la différence, sans qu'on lui demande rien, entre "copier des cellules" et "déplacer des cellules" ; y-aurait-il autre chose que je n'aurais pas compris dans ta question ?
A+
Bonjour,
En effet, "couper" ne fonctionne pas pareil. Mais sa logique m'échappe,
comme tu l'as constaté aussi certaines choses sont incrémentées et pas
d'autres. Ce fonctionnement me parait normal si on veut déplacer
des cellules, mais ce qui est incrémenté et pas incrémenté ne convient
pas, pour ce que je désire, c'est à dire déplacer des cellules, il faut
que les cellules référencées dans les formules et qui sont déplacées
soient incrémentées, et les autres pas.
Mais j'observe autre chose, j'ai essayé avec 2 formules :
- une qui ne concerne que des cellules déplacées : pas d'incrémentation,
le résultat est donc faux.
- une qui concerne une cellule déplacée et une non déplacée : ça marche
parfaitement, seule la cellule déplacée est incrémentée.
Je suppose que la logique correspond à un autre usage, et je serais
curieux de le connaitre.
Bonjour Régis,
Bonjour,
Je désire déplacer dans Calc un ensemble de cellules (ou même une
cellule), mais en conservant les formules. J'ai essayé divers "collages
spéciaux" sans succès.
Comment faire ?
Tout d'abord il faudrait préciser ce que tu entends par "déplacer une
cellule".
Pour ce que je comprends, cela n'a pas de sens de déplacer une cellule
puisqu'il s'agit d'une adresse, l'adresse de départ continue à exister
quoi que tu fasses. En revanche tu peux transférer / déplacer le
_contenu_ d'une cellule dans une autre cellule.
Là il y a 2 objectifs possibles :
1/ garder la formule contenue dans la cellule d'origine textuellement
identique : si j'ai =A1 dans la cellule d'origine je veux =A1 dans la
cellule d'arrivée. Autrement dit les références sont considérées comme
absolues et conservées non modifiées.
2/ transformer la formule pour conserver les références relatives : si
j'ai =A1 dans la cellule B1, je veux que le déplacement dans la cellule
Z2 me donne =Y2 (première cellule à gauche).
Si tu es d'accord avec ce résumé, qu'est-ce que tu veux faire exactement ?
Bonne journée
JBF
J'ai mis quelque part des cellules dont certaines contiennent des
formules. Mais elles sont mal placées, je désire les mettre ailleurs,
sur la page ou éventuellement sur une autre page.
Ce qui signifie, si j'ai bien raisonné :
- que si une formule fait appel à une cellule que je désire déplacer,
il fait que ça incrémente
- et que si une formule fait appel à une cellule qui n'est pas déplacée
ça n'incrémente pas.
Et aussi : s'il y a les 2 dans la formule, que ça n'incrémente que
celle(s) qui est déplacée.
Dans les échanges précédents on a vu que "couper" n'a pas le même comportement
que "copier", le comportement de "couper" ressemble à celui que je
cherche, mais ce n'est pas encore ça.
Imaginons qu tu ai en A3 =A1+A2
Si tu veux conserver la référence à une cellule précise dans ta formule (donc déplacer le contenu de A3 vers une autre cellule en conservant le calcul sur A1 et A2), il faut utiliser la notation
=$A$1+$A$2 le dollar permet de "fixer" la ligne et/ou colonne.
Si tu met ça en A3 puis que tu copie ou coupe A3 vers une autre cellule, le calcul sera toujours juste.
----- Mail original -----
Personnellement, dans un cas pareil, j'utiliserais des plages nommées ou Noms (Insertion/Nom) pour les cellules et ce pour plusieurs raisons :
- ça simplifie la lecture de la formule et la rend plus facile à comprendre si on nomme les plages de façon parlante
- les plages nommées délimitent des zones absolues
- il suffit de de modifier les plages ou le nom des plages (ou inclusif) pour adapter la formule et on risque moins de "tout casser" ce faisant
- on peut plus facilement, de mon point de vue, voir les cellules comprises dans la plage nommée
- et puis c'est facile à utiliser.
Merci, mais s'il y a 100 cellules avec des formules complexes, cette
opération est dissuasive 
je réponds à cette réponse reçue en privée, probablement par erreur :
Merci pour l'idée, mais malheureusement il semble que le glisser-déposer fonctionne comme le couper-coller :
1. une formule qui ne concerne que des cellules déplacées : pas d'incrémentation,
le résultat est donc faux.
2. une formule qui concerne une cellule déplacée et une non déplacée : ça marche
parfaitement, seule la cellule déplacée est incrémentée.
3. une formule qui ne contient que des cellules non déplacées : ça n'incrémente pas.
Les comportements 2 et 3 correspondent à ce que je cherche, mais pas lecomportement 1.
Je viens de penser à une chose : le comportement 1 concerne une somme de plusieurs cellules sur une collone (avec le symbole sigma). J'ai essayé une simple somme du type A1 + B1 et là ça marche, ça incrémente.
Donc pour l'instant, ce que j'observe est que c'est la somme "sigma" qui pose problème.
Si je comprends bien ta demande, c'est un glisser-déposer qu'il te faut :
Bonjour,
J'essaye de résumer cette discussion :
Le problème :
J'ai mis des formules dans des cellules dans un document Calc.
Le document évoluant, je désire déplacer un groupe de cellules qui sont
mal placées pour mon usage.
- Copier-coller ne marche pas, car ça incrémente les cellules dans les
formules.
- Mettre des $ ne marche pas car ensuite je désire pouvoir utiliser ces
cellules normalement, avec des incrémentations futures possibles. Et si
les cellules à déplacer sont nombreuses, c'est une opération fastidieuse.
- Couper-coller et glisser-déposer semblent fonctionner de la même
manière :
.si des cellules déplacées sont dans les formules, leur adresse (du type
A1) est incrémentée.
.si des cellules qui ne sont pas déplacées interviennent dans les
formules déplacées, leur adresse n'est pas incrémenté, comme s'il y
avant des $ provisoires.
Ces 2 fonctionnement correspondent exactement au but recherché.
Cas des formules qui utilisent la somme "sigma" :
- si ce sont des cellules non déplacées, la formule n'est pas
incrémentée --> c'est encore le bon comportement pour le but recherché
- si ce sont des cellules déplacées, la formule n'est pas non plus
incrémentées --> là ça ne marche plus (et la somme est donc égale à zéro).
S'il n'y a pas d'autre solution, la méthode est donc de couper-coller ou
de glisser-déplacer, puis de refaire les formules de somme.
Ysabeau, tu mentionnes des choses que j'ignore (les plages nommées), il
faut que je me penche dessus, je n'ai pas eu le temps de le faire.
Merci à tou.tes 