Столкнулся с проблемой, когда формулы LibreOffice в Calc сбиваются при копировании страниц и данных из одной страницы в другую. Стал искать варианты решения данной проблемы.
Подробно о ситуации — при копировании всего листа с формулами или при создании его копии методом «Переместить — скопировать» формулы нарушаются.
Происходит изменение формул — особенно если они использовали не только данные со скопированного листа но и с других листов.
Формулы LibreOffice — небольшие эксперименты и сравнение
Опытным путём было установлено, что происходит сдвиг ссылок в формулах на один лист.
Поиски решения данного вопроса привели к экспериментам в аналогичных программах. Таких как Мой офис — Российской разработки и зарубежного Microsoft Office.
При повторении данной процедуры, в Мой офис и зарубежного Microsoft Office, все копируется корректно и все работает так как надо, как по моему мнению и должно работать в нормальной ситуации.
Многие в данной ситуации, как и бывает, стали говорить, что лучше офисного пакета от Microsoft нету.
В некоторых аспектах возможно и соглашусь, но продолжил изучать данный вопрос.
Мои выводы
Почитав статьи и документацию по использованию формул в LibreOffice пришёл к выводу, что дело все не в офисном пакете.
Все дело в том, что нужно просто изучать программы которые используешь.
Необходимо изучать особенности используемого программного обеспечения. Всегда нужно учится. Мы привыкли использовать программное обеспечение одного разработчика и зациклились на нем, обленились.
Если изучить все нюансы используемого вами программного продукта, то иногда может выяснится, что он в некоторых аспектах даже лучше чем, то, что вы использовали ранее.
Надо не ленится и боятся нового — надо постоянно учится и развиваться. Все познаётся в сравнении. Но это уже дело каждого. Я выражаю лишь сугубо своё субъективное мнение.
Формулы LibreOffice — как правильно
Изучив данный вопрос — решение оказалось простым и банальным.
Для тех кто хочет изучить данный вопрос подробно вот выдержки и ссылки из официальной документации:
Относительная адресация
Ячейка в столбце А, строке1 адресуется как А1. Можно адресовать область смежных ячеек с помощью введения координат верхней левой ячейки области, а затем после двоеточия — координат нижней правой ячейки. Например, квадрат, образованный первыми четырьмя ячейками в левом верхнем углу, адресуется как A1:B2.
Таким способом адресации создаётся относительная ссылка на область A1:B2. Здесь термин «относительная» означает, что ссылка на эту область будет автоматически корректироваться при копировании формул.
Абсолютная адресация
Абсолютная ссылка противоположна относительной адресации. В абсолютной ссылке перед каждой буквой и цифрой ставится знак доллара, например, $A$1:$B$2.
Более подробно можно все найти в документации по адресу https://help.libreoffice.org
Конкретно по ссылкам — тут.
Как я понял это все выше описанное — если перед знаком ссылки поставить знак доллара $, то этот знак — ссылка становиться абсолютным и при копировании как ссылался на указанный адрес так и будет, неизменно, туда ссылаться.
Если например ссылка была ‘Лист1’.С29 ставим доллар перед ‘Лист1’ то лист при копировании изменятся не будет.
Соответственно если поставить знак доллара перед столбцом — зафиксируется столбец, перед строкой — зафиксируется строка.
Для каждого значения нужно применять этот приём, а не для всей ссылке, одним символом.
Пример:
Я копировал лист — ссылки менялись на определённый диапазон и один лист, выглядели они первоначально так:
=март.C27
Я применил выше описанное и все стало копироваться без изменений ссылки, ссылку, первоначально, использовал такого вида:
=$март.$C$27
Если кому есть чем поделится или рассказать свой опыт — пишите в комментариях.
Всем Удачи!
Формулы сбиваются, если скопировать лист и не поставить точку «переместить в конец», а перемещать потом курсором.
Будет возможность, проверим и этот вариант.
Удачи!