web-dev-qa-db-fra.com

Comment empêcher les données coupées et collées de modifier les références dans les formules?

Google Sheets a une fonctionnalité dans laquelle, si vous avez une référence à une cellule de données dans une formule et que vous coupez les données de cette cellule et les collez dans un nouvel emplacement, la référence dans la formule est mise à jour pour pointer vers le nouvel emplacement de la cellule.

J'aimerais pouvoir couper et coller mes données sans modifier mes formules.

Dans le passé, j'ai utilisé des fonctions affreuses avec la fonction INDIRECT() pour contourner cette fonctionnalité, mais il semble qu'il existe un moyen plus simple. Aucune suggestion?

46
grahamparks

La notation =$A$1 peut également être déplacée automatiquement si la valeur entre (disons) A1 est modifiée.

La seule solution sûre est de mettre toutes vos références dans INDIRECT, par exemple. =INDIRECT("$A$1") ou même simplement =INDIRECT("A1").

La difficulté de l’une ou l’autre de ces solutions réside dans le fait que vous utilisez plusieurs formules identiques, par exemple.

=A1
=A2
=A3
...
=A99

Normalement, vous devez remplir le premier =A1 puis le copier-coller (ou le faire glisser en utilisant la fonction de remplissage automatique) pour remplir automatiquement la formule suivante. Si, toutefois, la première formule est =$A$1 ou =INDIRECT("A1"), alors cette astuce ne fonctionnera pas (en fait, c'est le but de $ - d'empêcher qu'elle ne soit automatiquement modifiée).

Si vous avez plusieurs formules consécutives, une solution est:

  1. Créez la formule comme vous le faites normalement (utilisez Plain =A1 et remplissez automatiquement)
  2. Utilisez le dialogue de remplacement (Ctrl+H) et utilisez "rechercher dans les formules" pour envelopper tout =A1, =A2 ... =A99 dans la =INDIRECT("A1") etc. Notez que vous avez la possibilité d'utiliser des expressions régulières un trouver-et-remplacer.
20
Motti Strom

Du forum Google Documents :

Sélectionnez la plage de cellules. Puis utiliser Ctrl+C (copier; cela devrait mettre les cellules et leurs formules dans le tampon de pâte).

Maintenant, faites glisser (survolez le bord de la sélection jusqu'à ce que le curseur de la souris se transforme en main; vous pouvez maintenant faire glisser) les cellules sélectionnées vers le nouvel emplacement.

Revenez à la position initiale supérieure gauche des cellules copiées et utilisez Ctrl+V (pâte).

Vous devez maintenant avoir deux ensembles de formules faisant tous deux référence aux mêmes cellules.

29
Matt McClure

Je suis tombé sur cette question en cherchant un problème similaire et nous avons finalement trouvé une solution pour Excel qui semble fonctionner parfaitement dans les feuilles de calcul Google.

Pour les références de cellules que vous ne souhaitez pas modifier lors de la pâte, ajoutez simplement $ avant chaque partie.

Donc, G12 deviendrait $G$12

Une cellule d'un tableur que j'utilise qui fait ce dont j'ai besoin, ressemble à ceci:

 =$G$1&Sheet1!B3&Sheet1!A3&$G$2
29
Leonard

Dans Google Spreadsheets, pour couper et coller des cellules sans déplacer automatiquement leurs formules, vous utilisez Ctrl + X couper (ou Ctrl + C copier), et Ctrl + Shift + V coller.

Le Shift indique à Google Sheets de laisser vos formules seules.

7
feisty penguin

Contournez cela de la même manière que dans Excel:

COPY et collez les données, puis revenez en arrière et supprimez-les de l'emplacement d'origine.

5
MaryC.fromNZ

Couper (au lieu de Copier) semble fonctionner pour moi, probablement pour la même raison que le fait de faire glisser des cellules sélectionnées fonctionne, c’est-à-dire qu’il s’agit de la même opération. C'est aussi le seul moyen que je connaisse pour coller sur une autre page sans changer la formule.

Si vous essayez de faire une copie au lieu d'un déplacement, utilisez la méthode glisser (copier avant de faire glisser) ou copiez-la d'abord ailleurs sur la page.

3
Peter Tseng

Faites une copie de texte de la formule au lieu d'une copie de cellule: Utilisez la souris pour sélectionner le texte de la formule et appuyez sur CTRL + C. Ensuite, sélectionnez le champ de destination et appuyez sur CTRL + V. Cela préserve la formule

0
Claus Rasmussen
  1. Sélectionnez les cellules avec la souris
  2. Copier le presse-papier
  3. Déplacez les cellules sélectionnées vers un nouvel emplacement avec votre souris en capturant le bord du groupe.
  4. Coller du presse-papiers dans l'espace vide dans lequel vous venez de tout déplacer
0
Alex Debkaliuk

Je viens de Rechercher et remplacer toutes les instances de '=' avec '' (ou autant des formules que j'essaie de copier comme je les ai copiées peut) transformer toutes les formules en texte brut. Je copie et colle les cellules, puis ajoute le '='.

Remarque: cela ne fonctionnera probablement pas pour les feuilles volumineuses, car cela peut avoir des conséquences inattendues en modifiant d'autres cellules, mais cela fonctionne généralement pour mes besoins.

0
Luke Redmore