Страницы: 1 2 След.
RSS
Можно ли ускорить работу Excel, заменив HDD на SSD?
 
Добрый день. У меня ексел 2010 версии, комп intel core i3. Работаю с большим объемом ( более 500 000 строк, более 20 столбцов) информацией. Использую множество вложенных функций и макросов. При работе с такими объемами ексел часто тормозит.
Можно ли ускорить работу ексел заменив HDD на SSD? Или есть еще какие либо приемы по ускорению работы в ексел?
 
Цитата
Kasimov написал:
Можно ли ускорить работу ексел заменив HDD на SSD?
замена даст прирост скорости при загрузке excel и файла но не повлияет на дальнейшую обработку, так как все грузится в память и слабым местом у вас сразу становится i3
Цитата
Kasimov написал:
ли есть еще какие либо приемы по ускорению работы в ексел?
заменить процессор, использовать другие функции или по другому, обрабатывать все макросами, но не факт, обрабатывать запросами типа MSQuery или PowerQuery
А вот тему лучше тогда назвать - прирост производительности Excel при замене HDD на SSD.
Изменено: БМВ - 12.05.2020 16:53:10
По вопросам из тем форума, личку не читаю.
 
прикупите (и обязательно установите) больше оперативной памяти
но не факт что увеличение памяти в 2 раза в 2 раза увеличит скорость работы с вашим файлом, но не ухудшит - это точно
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
В дополнение к советам коллег - минимизируйте общение (актуально :) ) между Excel и VBA.
Владимир
 
Kasimov, ставьте надстройку Power Query вместе с Power Pivot и обрабатывайте ваши массивы с их помощью. Мой старенький i3 2013 года выпуска молотит объемы в несколько миллионов строк и все чудесно. Правда памяти я ему все таки до 8 гигов накинул, и версия офиса соответственно х64.
Вот горшок пустой, он предмет простой...
 
Цитата
Kasimov написал:
есть еще какие либо приемы по ускорению работы в ексел?
А нужны вам все эти 500 000 строк в открытой книге?
Может вам нужна, в зависимости от ситуации, только часть этих данных.  
 
Цитата
PooHkrd написал:
ставьте надстройку Power Query вместе с Power Pivot
тут можно и в версию Office упереться, не по разрядности, а по функционалу.

Цитата
sokol92 написал:
минимизируйте общение (актуально  ) между Excel и VBA.
Владимир, приветствую. вот сие не понял. Расшифруйте.
По вопросам из тем форума, личку не читаю.
 
Цитата
Kasimov: Можно ли ускорить работу Excel, заменив HDD на SSD?
вряд ли
Ссылки:
Выбор компьютера для работы в Excel
Анализ большого количества данных

OFF
Цитата
БМВ: вот сие не понял. Расшифруйте
плюсую - чё это минимизировать?)) VBA очень шустрый
Изменено: Jack Famous - 12.05.2020 17:50:22
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
 
Цитата
sokol92 написал: минимизируйте общение
Минимум событийных процедур. Я понял так
 
Цитата
Jack Famous написал:
VBA очень шустрый
пока не загнать обработку ячеек в цикле. Еще лучше выделяя каждую.
Полагаю речь идет об обработке данных максимально возможно без обращения к объектной модели Excel, кроме как для получения данных и сохранения результата.
 
Цитата
Alec Perle: пока не загнать обработку ячеек в цикле. Еще лучше выделяя каждую
попробуйте сделать тоже самое другими инструментами - интересно взглянуть, насколько вы ускоритесь
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
 
Цитата
БМВ написал: не понял. Расшифруйте.
Я так понял что макрос макросу рознь. Можно функцию ВПР размножать по ячейкам, а можно обсчитывать все в памяти и результат вываливать на лист.
Вот горшок пустой, он предмет простой...
 
Цитата
Alec Perle написал:
пока не загнать обработку ячеек в цикле. Еще лучше выделяя каждую.
ну с дуру можно и .... сламать. И это все относится к  
Цитата
PooHkrd написал:
что макрос макросу рознь.
Цитата
PooHkrd написал:
а можно обсчитывать все в памяти и результат вываливать на лист.
можно подумать что встроенные функции поступают иначе, но часто, в ущерб производительности не используются промежуточные вычисления, и в макросе это почти само собой разумеется, а в формуле мы ж все в одну ячейку упихнем,   и ждем потом  как оно считает. тут надо четко понимать , когда от красоты нужно перейти к результату.
Ну ладно каеой-нибудь  MATCH 1000 раз вместо 100, но вот LARGE или SMALL те же 1000  и тут уже можно писать что формульное решение другому формульному тоже не родня.
По вопросам из тем форума, личку не читаю.
 
Родился с формулами :), к VBA  позже пришел. Можно (даже нужно!) использовать и то, и другое.
Например, вставить макросом в ячейку сегодняшнюю дату, может, и медленнее на какие-то доли микросекунд, зато нет летучести. Можно передавать в VBA значение, вычисленное быстрой формулой...
 
Цитата
БМВ написал:
Расшифруйте.
Здравствуйте, Михаил! Я имел в виду общеизвестную истину, что операции с собственными объектами (конструкциями) VBA производит на порядок быстрее, чем операции, связанные с обращением к объектам Excel и к любым другим "чужим" объектам (даже если используется раннее связывание). Так что чтение/запись любой информации из Excel должна происходить как можно реже и как можно большими порциями (с учетом, естественно, ограничений по оперативной / виртуальной памяти).
Изменено: sokol92 - 12.05.2020 18:53:08
Владимир
 
Цитата
sokol92: операции с собственными объектами (конструкциями) VBA производит на порядок быстрее, чем операции, связанные с обращением к объектам Excel
ну это да
Классика - создать массив из одной области в 1 млн ячеек или из 1 млн областей по 1 ячейке отличается просто космически  :idea:
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
 
Создать массив из миллиона ячеек, а потом заполнять каждую ячейку отдельно :)
 
Цитата
vikttur: Создать массив из миллиона ячеек, а потом заполнять каждую ячейку отдельно
это же тоже самое  :D
Изменено: Jack Famous - 12.05.2020 21:21:11
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
 
Большие объемы данных вертеть в эксел дело пустое.
Порой проще данные перегнать куда нить в акцес и там с ними играться, а то и в sql
Ранее приходилось обрабатывать (фильтры, впр и т.д., но без vba) файлики с примерно 160 000 х 40 ячеек. Для этого каждый раз выделялся выделенный сервер с, дай бог памяти, 30ю ядрами и оперативкой за сотню гб. Экзелю это все пофиг, работа заканчивалась далеко за полночь.
 
Цитата
RizONE: 160 000 х 40 ячеек
такой объём и рядовой компьютер способен крутить неплохо - подход только нужен правильный  ;)
Связанные умные таблицы с большим объёмом данных. Как ускорить пересчёт?
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
 
RizONE, cv/ kbxre/
 
RizONE, не следует свой негативный опыт, основанные скорее всего на неоптимальном использовании инструмента, приводить как пример. Все конечно от задачи зависит, но  160 000 х 40 не бигдата для Excel.
По вопросам из тем форума, личку не читаю.
 
Цитата
RizONE написал:
160 000 х 40 ячеек
Для PQ+PP это вообще ни о чем. Даже на древнем железе крутит вертит такую фигню на раз, если руки откуда надо растут. Еще с серваками ради такой ерунды заморачиваться. Ладно бы с десяток-другой миллионов строк вертеть надо, тогда да, хотя и с этим моя железяка вполне справляется, особенно когда модельку с учетом новых знаний перестроил и от всякого шлака застарелого почистил.
Вот горшок пустой, он предмет простой...
 
я лишь хотел сказать, что просто использование побольше памяти, побольше ядер, побольше частоты, вообщем побольше всего не приведут к сильно заметным ускорениям в работе экзеля.
Согласен, я не оптимизировал в той, старой, работе ничего. Мне давали файл и я с ним работал. С начала на десктопе потом на сервере. переход с одного на другое особого прироста не дал. Я об этом.
 
Цитата
RizONE: побольше всего не приведут к сильно заметным ускорениям в работе экзеля
омоложение проца на 10 лет, увеличение ОЗУ, (может, и увеличение скорости ОЗУ) - всё это вкупе с грамотным подходом может увеличить скорость в разы/десятки/сотни/тысячи, в зависимости от задачи
Изменено: Jack Famous - 14.05.2020 11:13:24
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
 
Цитата
RizONE написал:
я лишь хотел сказать, что
Цитата
RizONE написал:
Большие объемы данных вертеть в эксел дело пустое
Именно это Вы и сказали ))
= = =
Проверьте личку. Второй раз прошу.
 
Цитата
Jack Famous написал:
Именно это Вы и сказали ))
ну, пардоньте )))
Мне как то проще, при необходимости, как пример, большие объемы лефт джойнить в акцесе чем ждать минутами выполнение впр в экзеле

ЗЫ
В личку глянул еще первый раз. перечитывал правила и пытался понять в чем мой косяк
Изменено: RizONE - 14.05.2020 11:30:17
 
Цитата
RizONE: пытался понять в чем мой косяк
разный регистр букв в отображаемом нике
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
 
Цитата
RizONE написал:
Мне как то проще, при необходимости, как пример, большие объемы лефт джойнить в акцесе
я ж и говорю не оптимально использован инструмент. JOIN доступен в MSQuery c давних времен и скорость не уступит сильно работе с access, но не с полноценнм SQL сервером конечно. Тоже самое макрописцы делают через ADO , а с приходом PowerQuery, появился мощнейший инструмент для этого.

Цитата
RizONE написал:
просто использование побольше памяти, побольше ядер, побольше частоты, вообщем побольше всего не приведут к сильно заметным ускорениям в работе экзеля.
и снова ошибка, разница заметна при работе на разных машинах.

Цитата
RizONE написал:
Для этого каждый раз выделялся выделенный сервер с, дай бог памяти, 30ю ядрами и оперативкой за сотню гб.
и снова ошибка. Не всегда настройки сервера позволяют  отдать приложению все доступные мощьности, да и сервер серверу рознь. не даром есть линейки для расчетов, только стоимость таких платформ во много раз больше чем у рядовых, а по скорости в ряде задач топовый I7 перекрывает не топовый Xenon.
По вопросам из тем форума, личку не читаю.
 
Эмпирическое наблюдение - если расчет выполняется 5 минут и более, то его на том же железе можно ускорить в 10 раз, если немного (1-7 дней) подумать. Если после этого сильно подумать (2 недели - 15 лет), то еще в 10 раз (без учета роста производительности аппаратной базы). :)  
Владимир
Страницы: 1 2 След.
Наверх