CEMEH
Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору vasiliy74 Я не сильно силен в ВБА но попробую помочь Итак, если нам надо просто вставить функцию, то мы можем включить запись макроса, набрать формулу ручками и посмотреть, что получится. Потом отредактировать в ручную. Можно по другому: Имеем формулу: прим (она вписана в ячейку A1) =ЕСЛИ((I72+СУММЕСЛИ(Transactions_TransactionsB!$F:$F;B72;Transactions_TransactionsB!$AT:$AT))=0;0;((J72-I72)+(СУММЕСЛИ(Transactions_TransactionsB!$F:$F;B72;Transactions_TransactionsB!$AF:$AF)+СУММЕСЛИ(Transactions_TransactionsB!$F:$F;B72;Transactions_TransactionsB!$AV:$AV))/$E$4-I73)/(I72+СУММЕСЛИ(Transactions_TransactionsB!$F:$F;B72;Transactions_TransactionsB!$AT:$AT)/$E$4)) на ВБА будет так: If range("I72")+ Application.WorksheetFunction.SumIf(range(Transactions_TransactionsB!F:F),B72,range(Transactions_TransactionsB!AT:AT)=0 then range("A1")=0' то есть если условие выполняется, ставим 0 в ячейку А1 else' если условие не выполняется то... range("A1")=range("J72")+range("I72")+(Application.WorksheetFunction.SumIf(range("Transactions_TransactionsB!F:F"), range("B72"), range("Transactions_TransactionsB!AF:AF"))+Application.WorksheetFunction.SumIf(range("Transactions_TransactionsB!F:F"),range("B72"),range("Transactions_TransactionsB!AV:AV"))/range("E4")-173)/(range("I72")+Application.WorksheetFunction.SumIf(range("Transactions_TransactionsB!F:F"),range("B72"),range("Transactions_TransactionsB!AT:AT))/range("E4")) end if Код не проверял. Может какую кавычку или скобку не поставил. Вполне возможно кто-то предложит более простое решение. Повторюсь, я не силен в ВБА Добавлено: ВОПРОС Возможно ли заставить ВБА залесть в интернет, открыть веб-страничку, выделить на ней все, скопировать, вставить на лист1 (использовать формат конечных ячеек) Особенно интересен вариант, когда вход на страничку закрыт логин/паролем. (известным логин/паролем) |