Как сделать сайт:
  HTML
  JavaScript
  PHP
  CMS
Microsoft Office:
  Word
  Excel
  VBA
Просто о сложном
Список форумов on-line-teaching.com on-line-teaching.com
Онлайн курсы MS Office: Word, Excell. Как сделать сайт: HTML, JS, PHP
 
 FAQFAQ   ПоискПоиск   ПользователиПользователи   ГруппыГруппы   РегистрацияРегистрация 
 ПрофильПрофиль   Войти и проверить личные сообщенияВойти и проверить личные сообщения   ВходВход 

Оптимизация формулы

 
Начать новую тему   Ответить на тему    Список форумов on-line-teaching.com -> Excel: общие вопросы
Предыдущая тема :: Следующая тема  
Автор Сообщение
Elfix
Prizivnik - draftee
Prizivnik - draftee


Зарегистрирован: 10.10.2008
Сообщения: 2

СообщениеДобавлено: Пт Окт 10, 2008 12:18 pm    Заголовок сообщения: Оптимизация формулы Ответить с цитатой

Привет.

Собрал полную информацию о деятельности предприятия в одной таблице, которая ежедневно увеличивается. По данным таблицы создается ежедневно отчет, который должен формироваться автоматически при указании начальной даты и конечной.
Отчет просто суммирует столбец Сумма по заданным критериям. Так как критериев много пришлось использовать формулу массива.

В общем, так выглядят все формулы в отчете:

Код:
{=СУММ(ЕСЛИ((ДДС!$C$2:$C$65536>=$C$10)*(ДДС!$C$2:$C$65536<=$D$10)*(ДДС!$P$2:$P$65536=B24);ДДС!$O$2:$O$65536))}


Понимаю, что это не самый лучший вариант написания формул. Отчет ДДС формируется автоматом, но необходимо время ожидания примерно 20 секунд. Это не критично, но в этом же файле по подобному принципу формируется отчет по продажам и его расчет вводит машину в состояние забытия. Невозможно ни сохранить документ (так как перед сохранением производится расчет) ни открыть его (если пересчет при сохранении не состоялся, то он начинается при открытии).

Собственно, что вы подскажете для оптимизации формулы? Подразумеваю, что указывать ссылки вида $P$65536 не есть вери гуд (т. е. все 65536 строк заставлять пересчитывать). А есть ли в экселе формула, позволяющая получить диапазон только тех строк, которые существуют в таблице, не включающий пустые строки?
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
AsIs
captain
captain


Зарегистрирован: 27.01.2006
Сообщения: 250
Откуда: СПб

СообщениеДобавлено: Пт Окт 10, 2008 6:24 pm    Заголовок сообщения: Ответить с цитатой

просто глупое предложение: а использовать имена?
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail Посетить сайт автора
Elfix
Prizivnik - draftee
Prizivnik - draftee


Зарегистрирован: 10.10.2008
Сообщения: 2

СообщениеДобавлено: Пн Окт 13, 2008 5:46 am    Заголовок сообщения: Ответить с цитатой

Так имена в Excel'e статические. Т. е. надо явно указать диапазон. А я его точно не знаю: он ежедневно разрастается. Или может быть я с именами не умею работать? Тогда объясните как это делается.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
AsIs
captain
captain


Зарегистрирован: 27.01.2006
Сообщения: 250
Откуда: СПб

СообщениеДобавлено: Пн Окт 13, 2008 5:25 pm    Заголовок сообщения: Ответить с цитатой

Это да, но имена намного проще изменять, чем пересматривать все формулы, где идет ссылка на этот диапазон. Одно централизованное изменение имени - и все формулы, которые его используют, обновились.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail Посетить сайт автора
AsIs
captain
captain


Зарегистрирован: 27.01.2006
Сообщения: 250
Откуда: СПб

СообщениеДобавлено: Пн Окт 13, 2008 5:28 pm    Заголовок сообщения: Ответить с цитатой

Другой вариант, более эффективный - использовать списки.
Суть в том, что в подготовленной таблице щелкаем и выполняем Данные \ Список \ Создать список.
Excel выполняет необходимые внутренние преобразования, после чего автоматически расширяет необходимые диапазоны в формулах, или, допустим сводных таблицах, при добавлении новых записей в этот диапазон.

Но тут нужно проверять, в каких вариантах автоматическая коррекция диапазона работает. По крайней мере с простыми формулами - это работает нормально.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail Посетить сайт автора
ann250387
Prizivnik - draftee
Prizivnik - draftee


Зарегистрирован: 01.12.2008
Сообщения: 2

СообщениеДобавлено: Пн Дек 01, 2008 7:38 pm    Заголовок сообщения: Ответить с цитатой

Подскажите как вставить формулы в ячейки так что бы они сохранили тот же вид, что и в строке формул?
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Показать сообщения:   
Начать новую тему   Ответить на тему    Список форумов on-line-teaching.com -> Excel: общие вопросы Часовой пояс: GMT + 2
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах


Powered by phpBB © 2001, 2005 phpBB Group
Русская поддержка phpBB