seregadushka

BANNED | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Код: =ЕСЛИ(И(ДВССЫЛ(ISTOK&"!document")="DIPLOM";СТРОКА()=Tekushaya);ДВССЫЛ("["&ISTOK&"]5!"&ЕСЛИ(ПРАВСИМВ(ЯЧЕЙКА("имяфайла";$A$1);1)="P";"J";"K")&196);7*ВПР(ДВССЫЛ(ЕСЛИ(ДВССЫЛ(mashina&СТРОКА())="--";traktor;mashina)&СТРОКА());Variant.xls!Bbaza;7;ЛОЖЬ)/podgon) | -- немного возвращаясь к вопросу о попытке замены Excel дохлыми таблицами AutoCAD. Зачем так сложно ? Я разгадал ГЛАВНЫЙ ЗАКОН Excel -- "Все формулы должны быть одинаковы". Эта формула принимает различные значения, независимо от того на какой строке и каком листе книги она находится. Попробую разделить ее на кусочки. Код: И(ДВССЫЛ(ISTOK&"!document")="DIPLOM";СТРОКА()=Tekushaya) | -- проверяет к чему относится ISTOK , к диплому и курсовому И одновременно с этим ждет когда номер текущей строки совпадет с переменной Tekushaya, Код: ДВССЫЛ("["&ISTOK&"]5!"&ЕСЛИ(ПРАВСИМВ(ЯЧЕЙКА("имяфайла";$A$1);1)="P";"J";"K")&196) | --- что бы ввести в таблицу расчетное значение из данного курсача. В зависмости от имени листа этой таблицы, значение из ISTOK берется из двух разных столбцов Код: 7*ВПР(ДВССЫЛ(ЕСЛИ(ДВССЫЛ(mashina&СТРОКА())="--";traktor;mashina)&СТРОКА());Variant.xls!Bbaza;7;ЛОЖЬ)/podgon) | --- иначе берет его из базы. База наполняется почти вручную, по отрывочным сведениям из Интернета, методическим указаниям. На то она и база, все дипломы и курсовые берут значения из нее. Ее корректировки отражается везде. Код: ЕСЛИ(ДВССЫЛ(mashina&СТРОКА())="--";traktor;mashina) | -- если в столбе mashina данной строки ее нет, то подставляется столб traktor и ищется значение для него, иначе для существующей машины Код: -- ну и любимая переменная PODGON . Она введена во все значимые формулы расчетов производительности, расхода топлива, удобрений, балансовой стоимости техники. Все, чтобы снизить эту чертовую себестоимость и вылезти на положительную рентабельность в этих мифических уборочных кампаниях. Думаю, и в реальных отчетах она есть и всегда на первом месте PS Небольшой прикол -- Эту формулу и придумывал долго, составлял из кусочков, пялился в нее часами ... Изначально имена листов начинались с букв P и B. Типа Progressivniy и Bazoviy , и формула долгое время не работала, я не мог понять почему ... Потом я плюнул на условности, сократил имена листов до 1 символа. Все заработало, и я забыл о той мелкой ошибке. Теперь , через год я вижу ошибку -- P и B находятся СЛЕВА , а не СПРАВА Почему это в теме AutoCAD, поптому что эти УЖЕ выполненные расчеты хорошо бы отразить в AutoCAD его родными объектами или таблицами, но это абсолютно не возможно, AutoCAD не потянет и десятой доли возможностей Excel по части расчетов. Но это мы уже обсудили давно, AutoCAD не потянет даже полноценную связь без расчетов с таблицами такого размера (примерно 100*30 таких формул в каждой ячейке). Эта тема для обсуждения полноценной связи AutoCAD и Excel. И на данный момент она очень далека от идеала. Единственная связь , которая работает идеально еще на старых версиях AutoCAD , не предъявляющая особых требований к ресурсам, никаких настроек и драйверов. С самой корявой реализацией отображения и возможностью изменения -- это связь Лист Excel, т.е. по сути screenshot листа. Неужели именно так видит Autodesk связи со сторонними программами. А что касается этой формулы, то специалисты по disel и LISP признают, что повторить ее в рамках таблиц AutoCAD будет сложно, а точнее вообще не возможно. | Всего записей: 1843 | Зарегистр. 23-09-2007 | Отправлено: 11:44 18-08-2014 | Исправлено: seregadushka, 12:46 18-08-2014 |
|