Goodafternoon все,VBA формула слишком долго, способы сократить его
В настоящее время перед лицом проблем VBA, где функция «запись макроса» делает работу, но когда я пытаюсь повторно запустить его, он дает мне ошибку 1004. я помню, что я мог бы сделать три вещи:
- Split формула в части, то обратитесь к следующей части в формуле (т.е. часть 2 = ABC + Защита + ГХИ, поэтому формула 123 + 3456 + ____, затем замените ____ на часть 2)
- Поместите формулу в виде текста в разные ячейки, затем обратитесь к этим ячейкам в формуле (формула является ячейкой («a1»). значение (?) + ячейка («b2») .value
- Give части коды конкретного имя, так что он будет сократить формулу (т.е. а = (?) «ВХОДА - МТК», то обратитесь к аЬсу в формуле
В частности, часть 2 - это то, с чем я мог бы помочь, поскольку я не знаю точной ссылки, и я всегда могу оглянуться на формулу в excel вместо того, чтобы идти в VBA.
Сама формула:
ActiveCell.FormulaR1C1 = _
"=IF(WEEKDAY(RC2)=6,COUNTIFS('INPUT - MOTC'!C90,""confirmed"",'INPUT - MOTC'!C101,""1"",'INPUT - MOTC'!C74,""500"",'INPUT - MOTC'!C86,""<>C"",'INPUT - MOTC'!C47,""<""&R2C11,'INPUT - MOTC'!C45,""<""&R2C12,'INPUT - MOTC'!C93,""No"",'INPUT - MOTC'!C105,""No"",'INPUT - MOTC'!C99,""No"",'INPUT - MOTC'!C47,RC2)" & _
"+COUNTIFS('INPUT - MOTC'!C90,""confirmed"",'INPUT - MOTC'!C101,""1"",'INPUT - MOTC'!C74,""500"",'INPUT - MOTC'!C86,""<>C"",'INPUT - MOTC'!C47,""<""&R2C11,'INPUT - MOTC'!C45,""<""&R2C12,'INPUT - MOTC'!C93,""No"",'INPUT - MOTC'!C105,""No"",'INPUT - MOTC'!C99,""No"",'INPUT - MOTC'!C47,RC2+1)" & _
"+COUNTIFS('INPUT - MOTC'!C90,""confirmed"",'INPUT - MOTC'!C101,""1"",'INPUT - MOTC'!C74,""500"",'INPUT - MOTC'!C86,""<>C"",'INPUT - MOTC'!C47,""<""&R2C11,'INPUT - MOTC'!C45,""<""&R2C12,'INPUT - MOTC'!C93,""No"",'INPUT - MOTC'!C105,""No"",'INPUT - MOTC'!C99,""No"",'INPUT - MOTC'!C47,RC2+2)" & _
",COUNTIFS('INPUT - MOTC'!C90,""confirmed"",'INPUT - MOTC'!C101,""1"",'INPUT - MOTC'!C74,""500"",'INPUT - MOTC'!C86,""<>C"",'INPUT - MOTC'!C47,""<""&R2C11,'INPUT - MOTC'!C45,""<""&R2C12,'INPUT - MOTC'!C93,""No"",'INPUT - MOTC'!C105,""No"",'INPUT - MOTC'!C99,""No"",'INPUT - MOTC'!C47,RC2)"
Я делаю что-то неправильно, или формула слишком долго?
(немного фона, я хотел бы добавить значения субботы & sunday к значению пятницы, поэтому, если будний день равен 6, то сделайте это).
Заранее спасибо :)
Зачем вы смешивали как стиль R1C1, так и общий стиль в вашей формуле? – bzimor
Чтобы поместить формулу в ячейку с помощью VBA, вы должны использовать только стиль R1C1 – bzimor
Что именно вы подразумеваете под стилем R1C1? И где я его не использую? Извините, относительно новичок в этой теме. – Thijsk