Как предотвратить вырезание и вставку данных, изменяющих ссылки в формулах?

В Google Таблицах есть функция, где, если у вас есть ссылка на ячейку данных в формуле, и вы удаляете данные из этой ячейки и вставляете ее в новое место, ссылка в формуле обновляется, чтобы указывать на новую ячейки.

Я хотел бы иметь возможность вырезать и вставлять мои данные без изменения моих формул.

В прошлом я делал некоторые отвратительные вещи, используя функцию INDIRECT(), чтобы обойти эту функцию, но похоже, что это будет более простой способ. Любые предложения?

36 голосов | спросил grahamparks 8 Jpm1000000pmSun, 08 Jan 2012 15:41:48 +040012 2012, 15:41:48

9 ответов


14

Обозначение = $ A $ 1 также может быть автоматически перемещено, если изменяется значение в (скажем) A1.

Единственное верное решение - заключить все ваши ссылки в INDIRECT, например. =INDIRECT("$A$1") или даже просто =INDIRECT("A1").

Трудность с любым из этих решений заключается в том, что у вас есть много одной и той же формулы, например

=A1
=A2
=A3
...
=A99

Обычно вы заполняете первый =A1, а затем копируете и вставляете (или перетаскиваете его с помощью автозаполнения) для автоматического заполнения последовательной формулы. Если, однако, первая формула =$A$1 или = INDIRECT ("A1"), то этот трюк не будет работать (на самом деле это то, что $ для - чтобы он автоматически не менялся).

Если у вас много последовательных формул, одно из решений:

  1. Создайте формулу как обычно (используйте обычный =A1 и автозаполнение)
  2. Используйте диалог замены (Ctrl-H) и используйте «поиск в формулах», чтобы обернуть все =A1, =A2 ... =A99 в =INDIRECT("A1") и т. д. Обратите внимание, что вы можете использовать регулярные выражения при выполнении поиска и замены.
ответил Motti Strom 16 +04002013-10-16T03:32:27+04:00312013bEurope/MoscowWed, 16 Oct 2013 03:32:27 +0400 2013, 03:32:27
26

Похоже на то, что ищет аналогичную проблему и в итоге нашел решение для Excel, которое отлично работает в таблицах Google.

Для ссылок на ячейки, которые вы не хотите изменять при вставке, просто добавьте $ перед каждой частью.

Таким образом, G12 станет $ G $ 12

Ячейка из таблицы, которую я использую, делает то, что мне нужно, выглядит примерно так:

 =$G$1&Sheet1!B3&Sheet1!A3&$G$2
ответил Leonard 16 FebruaryEurope/MoscowbThu, 16 Feb 2012 16:41:02 +0400000000pmThu, 16 Feb 2012 16:41:02 +040012 2012, 16:41:02
19

На форуме Документов Google :

Выберите диапазон ячеек. Затем используйте Ctrl + C (copy; это должно помещать ячейки и их формулы в буфер вставки).

Теперь перетащите (наведите указатель мыши на край выделения до тех пор, пока курсор мыши не превратится в ручку, теперь вы можете перетащить выбранные ячейки в новую позицию.

Вернитесь в исходную верхнюю левую позицию скопированных ячеек и используйте Ctrl + V (вставить).

Теперь у вас должно быть два набора формул, ссылающихся на одни и те же ячейки.

ответил Matt McClure 26 PM00000070000004331 2014, 19:36:43
5

В Таблицах Google, чтобы вырезать и вставить ячейки без автоматического сдвига их формулы, можно использовать Ctrl + X вырезать (или Ctrl + с для копирования) и CTRL + Сдвиг + в для вставки.

Shift сообщает Google Таблицам оставить свои формулы в одиночестве.

ответил feisty penguin 27 Jam1000000amMon, 27 Jan 2014 07:33:09 +040014 2014, 07:33:09
5

Обходите это так же, как в Excel:

КОПИРОВАТЬ и вставить данные, а затем вернуться и удалить их из исходного места.

ответил MaryC.fromNZ 9 Jpm1000000pmMon, 09 Jan 2012 13:57:37 +040012 2012, 13:57:37
2

Cut (вместо Copy), похоже, работает для меня, возможно, по той же причине, что и перетаскивание выбранных ячеек, т. е. это одна и та же операция. Это также единственный способ, которым я знаю, чтобы вставить на другую страницу без изменения формулы.

Если вы пытаетесь сделать копию вместо Move, используйте метод перетаскивания (копирование перед перетаскиванием) или скопируйте его где-то еще на странице.

ответил Peter Tseng 14 AMpThu, 14 Apr 2016 10:44:34 +030044Thursday 2016, 10:44:34
0

Сделайте текстовую копию формулы вместо копии ячейки: с помощью мыши выберите текст формулы и нажмите CTRL + C. Затем выберите поле назначения и нажмите CTRL + V. Это сохраняет формулу

ответил Claus Rasmussen 18 AM000000110000005731 2013, 11:48:57
-1

Вы можете нажать F4 , чтобы циклически переключаться между различными параметрами абсолютной ссылки, когда курсор находится на ячейке или в диапазоне. Это работает на Mac и Windows.

ответил Mick Liubinskas 5 Maypm12 2012, 16:29:14
-1

Самый простой способ - просто выбрать все ячейки, которые вы хотите переместить, и перетащить их туда, где вы хотите. Если у вас есть формулы в других ячейках, которые ссылаются на исходное местоположение перемещенных вами ячеек, эталонные формулы автоматически будут обновляться до нового местоположения перемещенных вами ячеек. Надеюсь это поможет! (Предположим, что это работает в Excel, но я сделал это только в Google Таблицах).

ответил Danny 7 thEurope/Moscowp30Europe/Moscow09bEurope/MoscowThu, 07 Sep 2017 11:55:15 +0300 2017, 11:55:15

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132