Возникла следующая проблема. Имеется таблица порядка 5000 строк, в каждой строке порядка 20 колонок с формулами при чем формулы ссылаются на ячейках только в данной строке. Также на данную таблицу наложен автофильтр и используются формулы типа
Код
=ПРОМЕЖУТОЧНЫЕ.ИТОГИ(9;F4:F5099)
Так как в работе постоянно необходимо использование автофильтра и при изменении набора строк происходит пересчет данной таблицы (на слабеньких машинах занимает продолжительное время). Вот что то не соображу - как сделать, что бы пересчитывались только видимые ячейки. Заранее спасибо за подсказку в каком направлении копать.
Всем доброго времени суток.
Возникла следующая проблема. Имеется таблица порядка 5000 строк, в каждой строке порядка 20 колонок с формулами при чем формулы ссылаются на ячейках только в данной строке. Также на данную таблицу наложен автофильтр и используются формулы типа
Код
=ПРОМЕЖУТОЧНЫЕ.ИТОГИ(9;F4:F5099)
Так как в работе постоянно необходимо использование автофильтра и при изменении набора строк происходит пересчет данной таблицы (на слабеньких машинах занимает продолжительное время). Вот что то не соображу - как сделать, что бы пересчитывались только видимые ячейки. Заранее спасибо за подсказку в каком направлении копать.and_evg
Можно конечно циклом проверять каждую ячейку (а лучше каждую строку) на видимость и пересчитывать только видимые. Но нужно смотреть - не факт, что это получится быстрее, чем считать всё
Еще вариант переписать формулы примерно вот так
Код
=если(ПРОМЕЖУТОЧНЫЕ.ИТОГИ(3;A2);ФОРМУЛА;)
Или в отдельный столбец (пусть в Е) написать
Код
=ПРОМЕЖУТОЧНЫЕ.ИТОГИ(3;A2)
и формулы переписать так
Код
=если(E2;ФОРМУЛА;)
Можно конечно циклом проверять каждую ячейку (а лучше каждую строку) на видимость и пересчитывать только видимые. Но нужно смотреть - не факт, что это получится быстрее, чем считать всё
Сделайте лучше по второму варианту второго варианта. Думаю, что так быстрее работать будет, чем макросом считать построчно. Впрочем, можно проверить - повесьте его (макрос) на кнопку и попробуйте. Там, кстати, даже не построчно можно, а по areas. Но все равно не нравится мне очень это. Кстати, формулы нельзя оптимизировать?
Сделайте лучше по второму варианту второго варианта. Думаю, что так быстрее работать будет, чем макросом считать построчно. Впрочем, можно проверить - повесьте его (макрос) на кнопку и попробуйте. Там, кстати, даже не построчно можно, а по areas. Но все равно не нравится мне очень это. Кстати, формулы нельзя оптимизировать?_Boroda_
К сожалению формулы вводят пользователи (каждый в свой файл) и всем невозможно будет объяснить логику, тем более что у каждого пользователя свои условия договора и свои специфические формулы.
К сожалению формулы вводят пользователи (каждый в свой файл) и всем невозможно будет объяснить логику, тем более что у каждого пользователя свои условия договора и свои специфические формулы.