Вычисление срока

Автор Юляшка, 2 августа 2017, 16:12

0 Пользователи и 1 гость просматривают эту тему.

Юляшка

Здравствуйте. Нужна помощь.
Есть таблица в формате excel, но ее открывают с разных машин, на которых стоит и excel разных версий и libreoffice calk. У меня на машине libreoffice calk.
Мне нужно было вычислить срок, имея начальную дату, по формуле EDATE (ячейка;месяцы). Вроде все получилось, но если начальная ячейка пустая (A), то в ячейке для срока (F) ставится автоматом 28.02.1900. В параметрах убрана галочка для нулевого значения.
Как сделать, чтобы срок вычислялся только при наличии даты в ячейке А, и чтобы, если открыть в excel  считалось тоже?
Кстати, при открытии таблицы на другой машине в excel, формула преобразовалась в другую и уже не считала.

rami

Нужно добавить проверку на наличие значения в ячейке:=IF(A2="";"";EDATE(A2;2))

Пишите эту формулу в F2 и растягивайте вниз.

JohnSUN

Добро пожаловать на форум!
Ну, первый вопрос очень простой - в большинстве примеров использования функции IF(ЕСЛИ) можно встретить конструкцию вида
=IF(A2="";"";EDATE(A2;2))
=ЕСЛИ(A2="";"";ДАТАМЕС(A2;2))
(Хм, rami стреляет быстрее...)
В Excel эта формула будет работать точно так же, как и в Calc.

А вот насчет этого твоего замечания
Цитата: Юляшка от  2 августа 2017, 16:12
Кстати, при открытии таблицы на другой машине в excel, формула преобразовалась в другую и уже не считала.
Такое возможно, такое случается... Например, я только что сохранил твой файл с исправленной формулой как .XLSX и нормально открыл его в Excel. А потом сохранил его в .ODS и при открытии в Excel все формулы исчезли, заменились значениями. Вывод: для людей, которые будут открывать эту книгу в Excel файл придется сохранять явно указывая формат майкрософт
Владислав Орлов aka JohnSUN
Благодарить-не зазорно.
Подарить благо создателям офиса, нашему ресурсу, мне

Юляшка


Юляшка

Цитата: Юляшка от  2 августа 2017, 14:56Такое возможно, такое случается... Например, я только что сохранил твой файл с исправленной формулой как .XLSX и нормально открыл его в Excel. А потом сохранил его в .ODS и при открытии в Excel все формулы исчезли, заменились значениями. Вывод: для людей, которые будут открывать эту книгу в Excel файл придется сохранять явно указывая формат майкрософт

СПАСИБО за ответ и совет.

У меня файл изначально в формате xls, сохраняю тоже в xls, другие пользователи тоже. Формулы, ссылки и другие усовершенствования ведут себя не предсказуемо. У меня уже просто листы целиком очищались сами по себе. Придется всё таки ставить ультиматум начальству по принципу "остаться должен только один - или exsel или libre".

economist

Зачем ультиматумы начальству?
MultiForamtSave - расширение
Руб. за сто, что Питоньяк
Любит водку и коньяк!
Потому что мне, без оных, -
Не понять его никак...

Юляшка

Цитата: economist от  3 августа 2017, 06:43Зачем ультиматумы начальству?
MultiForamtSave - расширение
А это надо идти к главному администратору-программисту на поклон. А в ответ скорее всего услышу, а зачем тебе формулы - ручками, ручками......

economist

Не надо ни к кому идти. Откройте в OpenOffice|LibreOffice вложенный файл.
Руб. за сто, что Питоньяк
Любит водку и коньяк!
Потому что мне, без оных, -
Не понять его никак...

Юляшка

Цитата: economist от  3 августа 2017, 14:22Не надо ни к кому идти. Откройте в OpenOffice|LibreOffice вложенный файл.

Открыла файл. Появилась в меню иконка, нажала, вышло окошко, при нажатии на кнопку SAVE никакого результата. А вообще, что должно получиться? Я по сравнению со своими коллегами продвинутый пользователь, но не настолько, как Вы.
Понимаете, какой-либо замысловатости для открытия файла мне "не простят" мои коллеги. Очень сложно что-либо новое в их понятии вводить. Это из разряда, когда сначала набирается текст в ворде (200 страниц),  печатается, сшивается, подписывается, а потом сканируются все 200 страниц. Когда я показала, как с помощью онлайн pdf-редактора и скана 1 страницы с подписью за 2 минуты получить нужный результат, на меня смотрели как на Билла Гейца.

mikekaganski

@Юляшка: это расширение ничему не поможет в Вашем случае. Оно не позволит остаться форматированию, которое портится при путешествии документа между ЛО и МСО. Вообще идея в том, чтобы, работая в ЛО, Вы всегда работали с нативным форматом, а параллельно сохраняемые файлы в других форматах при необходимости отправляли корреспондентам. Но, если такой корреспондент возвращает Вам документ со своими правками, и Вам нужно продолжить работу, Вам всё равно не обойтись без дополнительной работы: либо копировать его правки к себе в исходный документ (проверяя правильность копирования, в т.ч. форматирования; контролируя полноту - не пропустить бы чего), либо работать в его присланном документе - и иметь всё те же грабли.

Да и улучшить самочувствие корреспондентов с помощью этого расширения не получится: как видели они покорёженное форматирование, так и будут видеть.
С уважением,
Михаил Каганский

Юляшка

Цитата: mikekaganski от  3 августа 2017, 15:48Да и улучшить самочувствие корреспондентов с помощью этого расширения не получится: как видели они покорёженное форматирование, так и будут видеть.

Мечты мои "розовые" развеялись окончательно. Всё таки придется ставить ультиматум начальству. Спасибо Всем за советы и помощь.

economist

#11
У меня очень похожая ситуация на основной работе: 250 пользователей OpenOffice|LibreOffice Calc и из них 25 - пользователи Excel. Примерно 50 важных файлов, расположенных на файл-серверах, - ежедневно совместно редактируются (в режиме Excel - одновременно, в режиме Calc - по очереди). Да, были мелкие проблемы совместимости. Но благодаря тому что не "всем нужно всё", а всё-таки "каждому - своё" - удалось так поставить работу, что ошибок нет. За счет чего удалось сделать 100%-ю интероперабельность офисов?

Во-первых, макросы могут всё, а в истории OpenOffice были времена, кода в файле формата XLS (не ODS!) - сохранялся VBA-код внутри SB-кода и даже исполнялся! Это было до InfraOffice 3.2.1. Порядка 20 машин у меня так и работают до сих пор, именно для "собиралок" , хотя у пользователей есть PortableLibreOffice со всеми новыми плюшками для других документов.

"Проблемные" формулы, кстати, есть даже в отношениях чтения XLS/XLS? в парах Excel2003-Excel2007 или Excel 2007-Excel-2010+. Одной из них является =КОНМЕСЯЦА(), возможно и другие формулы дла работы с датами. Она просто не вычисляется. Выход прост - переделать на другие формулы, использовать UDF на VBA или просто вычислять что-то макросом. В таких гетерогенных MSO-средах есть беды и по-круче: плодятся пользовательские форматы (это злостный глюк MSO, приводящий к подмене стилей по-умолчанию: вводишь в пустом новом листе 0 - получаешь 01.01.1900). У меня есть файл тестов "магнитной" компании, в котором 16 тыс. пользовательских стилей. Сам же набирал до "сотен" такой гадости, пока не сделал макрос-"лечилку".

Во-вторых, можно использовать Excel/Calc как продвинутый программируемый "интерфейс" для сбора данных, а сами (совместно создаваемые/вводимые данные) - хранить не в документе, а отдельно, снаружи, в TXT/CSV/TSV-файлах или в СУБД типа SQLite итп. Это еще более правильное решение, так как оно "дружит" между собой не только все офисные пакеты, но операционные системы за период с 1999-го по 2017-й год. Плюс скорость работы: Excel/Calc-файл 50000х200 значений открывается, пересчитывается, авто-фильтруется, а результат печатается - за 3 минуты, а тот же файл, динамически получающий данные из текстового файла через ADODB.Stream/ODBC/ODB/SQL  - позволяет сократить это время до 30 секунд.

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

Главное - всё-таки личное желание предельно автоматизировать свою работу и знать что это всегда возможно. Даже в самых заскорузлых конторах (у меня большой опыт) это возможно, пусть и займет год. Нормальному сисадмину дешевле дать админские локальные права,  чем разбираться самому в новой предметной области. А то что сисадмины - крайне посредственные пользователи офисных пакетов - я вам легко докажу...  
Руб. за сто, что Питоньяк
Любит водку и коньяк!
Потому что мне, без оных, -
Не понять его никак...

mikekaganski

Всё это хорошо и здорово. Но у пользователя должна быть причина делать всё это.

Если есть "злой руководитель", который заставил людей работать в гетерогенной среде, и пользователи не могут заставить его сделать им удобно (как удобно им), например, убедив, что один из компонентов жутко хороший, а второй жутко плохой, и издержки на приобретение #1 с лихвой окупятся за счёт экономии рабочего времени - ну, если руководитель сам разбирается, или (вот чудеса!) имеет грамотных советников и им доверяет - тогда да, некоторые пользователи начнут свою энергию тратить на поиск оптимальных методов работы в такой среде. Но и это должно поощряться, иначе таких будет ~1%, и это в лучшем случае. Хотя в компании с однородными производственными операциями и этого процента может вполне хватать, в других компаниях это будет недостаточно, поскольку в критичных участках бизнеспроцесса может не оказаться нужных инициативных людей, а работники (не руководители и не сисадмины) чаще всего не видят систему целиком - и даже те области, которые им видны, они видят в искажённой перспективе со своей колокольни.

И ещё - у пользователя, при его познаниях в предметной области, чаще всего нет познаний в области организации систем управления и АРМ.

Если на предприятии нет системы ротации - чтобы у людей был достаточный опыт работы на каждом участке производственного процесса (даже если это требует некоторого переучивания работников); если руководитель считает, что работа специалистов ИТ - это поддержание работоспособности компов, и всё (а не широкий профиль, включающий поддержку пользователей, в т.ч. в их использовании специализированных программ - а значит, изучение их функционала; анализ часто повторяющихся операций и написание хотя бы минимальных утилит для их автоматизации) - тогда это всё пустой трёп.

И да, докажите мне, что я крайне посредственный пользователь офисных пакетов.
С уважением,
Михаил Каганский

economist

#13
Отлично, приступим! Любую большую проблему приходится в ходе анализа декомпозировать на мелкие, и происходит это само по себе. У ТС - совместно редактируемый документ выглядит по разному из-за разного ПО, а оно разное потому что нет денег на дорогое, одинаковое, привычное топ-менеджменту (и откатопригодное), то есть на Microsoft Office.

Т.к. именно от них, от топ-менеджеров, зависит любое приобретение ПО, и именно их привычки "ценнее" - то единственными компетентными рефери должны стать технические специалисты - сисадмины, которые докажут топам и хозяевам что нужно впулить немного бабла в новые ОДИНАКОВЫЕ программы MSO по 18 тыс. руб. за 1 шт. Однако кризис системный:
- Сисадмины некомпететны в офисном ПО ("оно им не нада");
- Сисадмины не поддерживают пользователей, поскольку, как и топ-менеджмент, считают что пользователи обязаны быть настолько квалифицироваными, чтобы уметь все делать сами, или "ручками-ручками", раз не умеют.
В этих условиях пользователи оказываются между молотом и наковальней, и ведут себя как и написала @Юляшка - печатают 200 листов, сшивают, а потом сканируют сшив, перегибая листочки, стоя у МФУ. Делают ТУПУЮ работу, причем самым тупым образом. А тупой труд оскотинивает человека. Люди вроде ТС сопротивляются системе, но она непобедима. Люди послабее - начинают обманывать систему - делать вид что работают. Я таких вижу, их не менее 25%, причем поло-возрастных особенностей нет (и стал, и млад, и цвет волос любой, и с бритыми подмышками, и "ой"). Просто эти люди поняли: в подобных условиях изображать работу - эффективнее, чем её делать. Меньше затрат "всего": нервов, зрения, здоровья. Между прочим, в семьях у них, как правило все ОК.
 
 
Руб. за сто, что Питоньяк
Любит водку и коньяк!
Потому что мне, без оных, -
Не понять его никак...

economist

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

1) "Оно им не нада" - действительно, сисадминам мелких и средних компаний практических не приходится создавать и править офисных документов в OpenOffice|LibreOffice|MSO. В этом они чемпионы и уступают только уборщицам и охранникам. Их деятельность незрима и неслышна. Групповые политики, ACL-списки, аккаунты итп - как правило неосязаемы в виде файлов. Три служебки в год на отгулы и покупку кактуса - не в счет. Приказ о смене паролей на двух листах - тоже. Откуда взяться профнавыкам и советам как техподдержке, если не работаешь с ПО? Да миллионной доли офисного многообразия сисадины не знают.

2) "У них есть дела поважнее" - и с этим я полностью согласен. Гораздо острее всяких офисов - у всех поголовно стоит проблема "железа", бэкапов, "пряток" от ФНС, связи, интернета, видеонаблюдения, картриджей и всего прочего, что навешивают на сисадминов. Плюс их предметная область - настолько обширна, что как и бухучет, практически не может существовать в одном мозге. Знать железо, Сети, СУБД, web-технологии, уметь скриптошкодить, IP-телефонию - это сложно. И когда я задаю вопрос про многоуровневую нумерацию заголовков во Writer - я понимаю что среди обычных пользователей я гораздо вероятнее услышу ответ, чем от сисадмина.

3) Сисадмину как никому другому легко дается уже упомянутое 25%-е ИМБУРДЕ. А чувство бесконтрольности и LAN/WAN-всевластия - способствует развитию низких инстинктов. Многие не могут устоять от такого соблазна.

Тем не менее, безусловно, сисадмины - наиболее интеллектуально развитая и эрудированная офисная прослойка, редко позволяющая себе делать тупую работу. Она имеет самый большой потенциал для роста "нужности" бизнесу. Но центр компетенции по использованию офисного ПО - это точно не в IT-отделе. Может лично мне так не везло - но я ни разу не видел обратного, хотя поработал и в многотысячных коллективах (госслужба, банкинг, нефтедобыча, тяжпром), и в своём бизнесе, и как консалтер.

Хороший сисадмин, даже будучи "плохим", должен когда-то поступить как Ельцин - делегировать часть функций "в народ": дать некоторым "продвинутым" юзерам - локальные админские права (пусть ставят что хотят), разрешить VBS/PS-скрипты, убрать запрет GP на запуск неизвестных приложений, снять все ограничения по сайтам, кроме соцсетей и прона, дать право вести отдельным "спецам" техподдержку по OpenOffice|LibreOffice, 1С и особенно по локальным разработкам (да-да, по моим программам должен хелпдеск делать я, несмотря на написанную техдокументацию).     

mikekaganski, полагаю вы не "просто сисадмин", так как делаете и знаете намного больше, чем обычные сисадмины. Если вам приходится составлять к-либо "программные" документы - Положения, Инструкции итд - конечно, как пользователь офисных пакетов вы будете намного опытнее других сисадминов, которым "оно не нада".
Руб. за сто, что Питоньяк
Любит водку и коньяк!
Потому что мне, без оных, -
Не понять его никак...