Форум поддержки пользователей. LibreOffice, Apache OpenOffice, OpenOffice.org

Форум поддержки пользователей. LibreOffice, Apache OpenOffice, OpenOffice.org

31 Июль 2021, 18:24 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
Новости: Часто задаваемые вопросы по LibreOffice и Apache OpenOffice.org
 
   Начало   Помощь Поиск Войти Регистрация    задать вопрос  
Страниц: 1 2 »   Вниз
  Печать  
Автор Тема: проблема с функциями CountIf и SummIf [РЕШЕНО]  (Прочитано 12200 раз)
0 Пользователей и 1 Гость смотрят эту тему.
maXima
Новичок
*
Offline Offline

Сообщений: 3


« Стартовое сообщение: 15 Июль 2010, 18:31 »

Добрый день!

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

Ситуация такова - имеется два файла (в приложении).
В одном из них (111.ods) необходимо подсчитать количество совпадений по текстовому коду из другого файла (222.ods), для функции SummIf - сумму
В OO линейки 2.4 сложностей не было, в OO 3, начиная с 3.0 не получается.
Пробовал с форматами .xls, .ods - одинаково не получается.

Дополнительная информация
  Win XP,
  OO 3.2.1 (OO320m18 build:9502)
  Java 1.6.0_20
  
Заранее спасибо всем откликнувшимся!

[вложение удалено Администратором]
« Последнее редактирование: 17 Июль 2010, 10:11 от Syzygy » Записан
prof-alex
Форумчанин
***
Offline Offline

Пол: Мужской
Сообщений: 354


« Ответ #1: 15 Июль 2010, 21:08 »

Нужно ещё поискать среди регрессий, но обычная формула вроде =COUNTIF(B2:B35;"Linux") не работает. Если изменить формулу на =COUNTIF('file:///222.ods'#$TDSheet.C$13:C$65;"^"&D5&"$"), то заработает при включенной настройке "Разрешить регулярные выражения в формулах".

Ошибка в том, что вторым параметром должно следовать отношение, а не значение. Т.е., если бы в столбце D были не коды, а "регулярки" вроде ^030235 функции бы работали (хотя и не всегда верно).
« Последнее редактирование: 15 Июль 2010, 21:13 от prof-alex » Записан


«Студентов, ранее изучавших Бейсик, практически невозможно обучить хорошему программированию. Как потенциальные программисты они подверглись необратимой умственной деградации» Э. Дейкстра
dr.Faust
Администратор
**
Offline Offline

Пол: Мужской
Расположение: Ростов-на-Дону
Сообщений: 1 340


« Ответ #2: 15 Июль 2010, 23:42 »

А почему не выдернуть весь диапазон в книгу с вычислениями и уже в нём работать - я и в Excel так делал - там те же проблемы бывают.

[вложение удалено Администратором]
Записан

Свобода информации - свобода личности!
Slavka
Участник
**
Offline Offline

Сообщений: 19


« Ответ #3: 15 Июль 2010, 23:45 »

В твоем файле 111.ods ошибка в формуле.  В ячейке С11 формула выглядит вот так:
=COUNTIF('file:///D:/222.ods'#$TDSheet.C$13:C$65;D12) - т.е. идет проверка ячейки D12 вместо D11.

Тоже самое и в ячейке С15 формула выглядит вот так:
=COUNTIF('file:///D:/222.ods'#$TDSheet.C$13:C$65;D16) - т.е. идет проверка ячейки  D16 вместо D15.

А ошибка пошла с ячейки С6, т.к. формула в ячейке С5:
=COUNTIF('file:///D:/222.ods'#$TDSheet.C$13:C$65;D5) - еще правильная, проверяется ячейка D5

а формула в ячейке С6:
=COUNTIF('file:///D:/222.ods'#$TDSheet.C$13:C$65;D7) - уже неправильная, произошло смещение на единицу и проверяется ячейка D7 вместо D6
Записан
dr.Faust
Администратор
**
Offline Offline

Пол: Мужской
Расположение: Ростов-на-Дону
Сообщений: 1 340


« Ответ #4: 15 Июль 2010, 23:51 »

Я тоже видел эту странность, но это не объясняет неработоспособность функций.
Записан

Свобода информации - свобода личности!
maXima
Новичок
*
Offline Offline

Сообщений: 3


« Ответ #5: 16 Июль 2010, 08:35 »

Спасибо всем за внимание!  Подмигивающий

Было подозрение, что произошло смещение формул, хотя, как сказал dr.Faust, это не оказалось объяснением проблемы.

Если правильно понимаю, для гарантированного результата - для новичков - единственным вариантом будет являться анализ только по листам одного документа, без ссылок на внешние файлы?

Кстати, это баг или фича?

p.s. Иногда так сложно бывает объяснить сотрудникам что такое CountIf и SummtIf, а объяснить необходимость ещё парочки "шаманских действий" почти не реально...  Веселый


Записан
Helen
Администратор
**
Offline Offline

Пол: Женский
Расположение: Екатеринбург
Сообщений: 2 574


WWW
« Ответ #6: 16 Июль 2010, 11:11 »

Если правильно понимаю, для гарантированного результата - для новичков - единственным вариантом будет являться анализ только по листам одного документа, без ссылок на внешние файлы?

Кстати, это баг или фича?
Это баг, который надо бы в багтрекер.
Ссылки на внешние файлы вполне возможны, если выполнить "Вставка - Лист из файла" и включить параметр "Связь с файлом". Тогда данные будут обновляться всякий раз при открытии файла.
И сотрудникам удобнее станет ссылаться на данные, если они видят их на соседнем листе
Записан
Slavka
Участник
**
Offline Offline

Сообщений: 19


« Ответ #7: 16 Июль 2010, 11:14 »

Я тоже видел эту странность, но это не объясняет неработоспособность функций.

А в чем заключается неработоспособность ?  После выше приведенных замен в формулах у меня все работало корректно на OOo Pro 3.0.0, OOo Pro 3.1.0, OOo Pro 3.1.1
Записан
dr.Faust
Администратор
**
Offline Offline

Пол: Мужской
Расположение: Ростов-на-Дону
Сообщений: 1 340


« Ответ #8: 16 Июль 2010, 11:17 »

У  меня не заработало. Да и странно, что так работает, а так нет...
Как будто есть разница на какую ячейку ссылаться.
Записан

Свобода информации - свобода личности!
Helen
Администратор
**
Offline Offline

Пол: Женский
Расположение: Екатеринбург
Сообщений: 2 574


WWW
« Ответ #9: 16 Июль 2010, 11:19 »

Проверила в ООо 2.4.0 Novell - работает.
Slavka, спасибо за указание версии.

Коллеги, у кого есть 3.2 Go-oo, проверьте, пожалуйста.
Записан
Рыбка Рио
Форумчанин
***
Offline Offline

Сообщений: 1 678


« Ответ #10: 16 Июль 2010, 11:22 »

Функция SUM работает, а COUNTIF - не работает. (OOo 3.2.1)
Ссылки на внешние файлы вполне возможны, если выполнить "Вставка - Лист из файла" и включить параметр "Связь с файлом". Тогда данные будут обновляться всякий раз при открытии файла.
Можно ссылку на внешний файл иначе создать: вводите функцию SUM, к примеру, а диапазон выделяете мышкой в другом файле и жмёте Enter. Функция SUM в конечном файле начинает работать, если исходный файл сохранить, а потом в конечном файле в меню Правка/Связи... обновить ссылку на файл.
Записан

ubuntu 12.04 + LibO3.6.0
Рыбка Рио
Форумчанин
***
Offline Offline

Сообщений: 1 678


« Ответ #11: 16 Июль 2010, 11:37 »

Хотя, COUNTIF тоже работает, если условие писать в виде ">5", т.е. к примеру,
=COUNTIF('file:///F:/Shared/исходный.ods'#$Лист1.A1:B7;">5")
т.е., ошибка в том, как обрабатывается сравнение строк при внешней ссылке на файл, видимо.
Записан

ubuntu 12.04 + LibO3.6.0
Рыбка Рио
Форумчанин
***
Offline Offline

Сообщений: 1 678


« Ответ #12: 16 Июль 2010, 11:51 »

Нет, оказывается проблема в знаке ' перед строкой.
Всё заработало, как только этого знака не стало.

[вложение удалено Администратором]
Записан

ubuntu 12.04 + LibO3.6.0
Рыбка Рио
Форумчанин
***
Offline Offline

Сообщений: 1 678


« Ответ #13: 16 Июль 2010, 12:11 »

Всё, ясно. Если строка начинается с цифры, то она обрабатывается как-то с ошибкой, а если первый символ, к примеру, икс, то всё в порядке.

[вложение удалено Администратором]
Записан

ubuntu 12.04 + LibO3.6.0
Рыбка Рио
Форумчанин
***
Offline Offline

Сообщений: 1 678


« Ответ #14: 16 Июль 2010, 13:24 »

Вот: Issue 113183.
Записан

ubuntu 12.04 + LibO3.6.0
Страниц: 1 2 »   Вверх
  Печать  
 
Перейти в:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!