18

Я хотел бы сослаться на весь столбец, как вы можете в Excel, используя A:A Я нашел дискуссию на форумах openoffice.org, которой несколько лет, и предлагает, что нет / не было аккуратного способа сделать это. Представленные варианты

  1. Используйте A1:A65536 .
  2. Используйте OFFSET($A$1;0;0;65536;1) как предыдущий диапазон может измениться, если вы вставляете или удаляете строки.
  3. Используйте Data -> Define Range ..., чтобы назвать диапазон столбцов (но для меня это все равно равно $A$1:$A$1048576).

Эти подходы кажутся слишком сложными и все еще не достигают моей цели идеально. Кто-нибудь знает более простой способ ссылки на весь столбец?

4 ответа4

5

Вы можете сделать это менее сложным, назвав столбец. Выберите столбец и назовите его в поле «Имя» в верхнем левом углу Calc. Вы не можете использовать A:A, но AA будет работать. Это похоже на № 3 выше. Кажется, что он отлично справляется со вставкой / удалением строк, но я не слишком много тестировал. Создайте шаблон с именем каждого столбца и начинайте там, когда вам нужна эта функция. Похоже, что такой подход требует минимальных усилий.

Тем не менее, это все еще не работает, как я ожидал. Это то же самое, что и использование $ A:$ A в Excel. Если вы скопируете формулу в новый столбец, она будет продолжать ссылаться на столбец A, а не переводиться в новый столбец по смещению копии. Это делает вещи действительно громоздкими, если вы привыкли к этой функции.

В конце, чтобы точно дублировать функциональность, похоже, что мы должны использовать 1 доллар США:1048576 долларов США.

3

Нет, но он будет доступен в следующей версии Calc: https://bugs.documentfoundation.org/show_bug.cgi?id=44419.

Изменить: На самом деле, он уже загружается в " LibreOffice Fresh ".

Также этот вопрос касается OpenOffice, который сейчас является отдельным продуктом. Я не знаю, включают ли они подобные изменения из LibreOffice, но я нашел это:

В долгосрочной перспективе это означает, что большие улучшения OpenOffice могут быть включены в LibreOffice, в то время как большие улучшения LibreOffice не могут быть включены в OpenOffice. Это явно дает большое преимущество LibreOffice, который будет развиваться быстрее и включать больше функций и улучшений.

Изменить: На самом деле это не совсем исправлено. Вы можете ввести A:A в некоторых местах, но затем он преобразуется в A1:A1048576 что не то же самое. Это на самом деле не относится к A:A как следует. Например, если вы перемещаете ряды, он становится разбитым.

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

2

Сам искал ответ на этот вопрос и по пути нашел другой вариант ..

Ответ, связанный с наименованием столбца, был мне неясен, когда я его прочитал ..

С точки зрения начинающего, он пытался сказать, что когда вы выбираете всю строку, в раскрывающемся списке в верхнем левом углу он говорит об эффекте A1:A1048576 .. это вы переименовываете, чтобы дать столбцу имя ... и использовать это вместо Excel A:A

Это только продолжало вызывать у меня проблемы, и, как мне показалось, лучше, если это применимо к тому, кто еще найдет потребности этого поста.

Вместо этого, скажем, A1 .. У меня есть название .. Total скажем .. со всеми значениями под ним.

Я просто использовал это вместо переименования столбца и работал в основном одинаково, без большого количества проблем ... хотя в случае символов Заголовка, которые используют такие функции, как / (что было моей проблемой), вы должны помнить, чтобы поставить апострофы до и после то есть .. 'Km/Gal' смущал Калья, пока я не понял, что они мне нужны ...

Пришлось сначала назвать что-то нормальное (kmgal) а затем изменить его после того, как я ввел формулу для расчета среднего значения .. В котором Calc исправил это для меня, а потом я заметил, что он сделал, и исправил их сам.

Так просто, в использовании я использовал ...

=ROUND(AVERAGE('Km/Gal');3)
2

Перейдите к какой-либо ячейке (скажем, B1) и вставьте в нее значение "A1048576".

Затем, чтобы ссылаться на все значения из столбца A, просто введите что-то вроде

=max(a1:index(b1))

Неважно, если вы удалите несколько строк из диапазона; содержимое b1 всегда гарантирует, что вы ссылаетесь на последнюю ячейку из столбца A.

Примечание: в моей установке Calc формула была бы =máximo(a1:índice(b1)) , поэтому я не уверен, что имя функции действительно является index на английском языке.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .