|
|
|
Excel 2013 медленно работает как com- сервер
|
|||
|---|---|---|---|
|
#18+
объём данных небольшой, 1500 строк, 460 Кб данных, пишет 15 минут. Антивирус отключен. обычным обращением к ячейкам (да, я знаю что правильней писать блоком) Но та же программа, запущенная на машине с офисом 2003 отрабатывает за 26 секунд Примерно столько же на офисе 2010. Вопрос - 1) Сталкивались ли с таким 2) Можно ли лечить 3) Какого лешего :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2020, 13:41 |
|
||
|
Excel 2013 медленно работает как com- сервер
|
|||
|---|---|---|---|
|
#18+
use RANGE, luke! Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2020, 13:46 |
|
||
|
Excel 2013 медленно работает как com- сервер
|
|||
|---|---|---|---|
|
#18+
Мимопроходящий, это понятно. хотя не всегда возможно (на лист вставляется куча формул) ну и вопрос не в том. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2020, 13:57 |
|
||
|
Excel 2013 медленно работает как com- сервер
|
|||
|---|---|---|---|
|
#18+
13.11.2020 13:57, _avz пишет: > это понятно. > хотя не всегда возможно (на лист вставляется куча формул) одно другому не третье! Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2020, 14:02 |
|
||
|
Excel 2013 медленно работает как com- сервер
|
|||
|---|---|---|---|
|
#18+
_avz, для твоих объемов считай, что все, что больше 10 секунд - недопустимо медленно, независимо от версии Excel и способа его заполнения. А так да, в каждой следующей версии Excel как com-сервер меняет свои характеристики. Что-то становится немного быстрее, а что-то может стать и много хуже. В среднем, в режиме удаленного ole-сервера, замедление есть... Идея любого ускорения в этом месте строится на базе укрупнения объемов взаимодействия между процессами. Например, создай спец. надстройку в Excel специально предназначенную для взаимодействия с твоей программой. Данные ей отдавай, слепляя их в строки или вообще внешним файлом. Ее и протестировать можно будет в режиме работы "сама с собой". В таком случае, у тебя оценка появится приемлемости качества кода самой надстройки. Так, не зная деталей, методом пол-потолок, можно предложить считать, что пока такая надстройка работает медленнее, чем за 5 секунд работает на 2013 "сама с собой" - ее код почти наверно неприемлем. Реальность может как-то подправить эту оценку от впятеро вниз (1 сек) до вдвое вверх (10 сек). Вообще, код показывай, почти наверно там нелепость какая-то... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2020, 14:23 |
|
||
|
Excel 2013 медленно работает как com- сервер
|
|||
|---|---|---|---|
|
#18+
_avz, разрядность приложения и версии excel соответствуют друг другу? Если нет - у тебя при передаче данных, вообще говоря возникает трасляция адресов. Это само по себе может сильно влиять при частых мелких взаимодействиях... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2020, 14:29 |
|
||
|
Excel 2013 медленно работает как com- сервер
|
|||
|---|---|---|---|
|
#18+
_avz 1500 строк, 460 Кб данных, пишет 15 минут. Если пулять сразу одним махом, то счет пойдет на мс. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2020, 15:16 |
|
||
|
Excel 2013 медленно работает как com- сервер
|
|||
|---|---|---|---|
|
#18+
_avz хотя не всегда возможно (на лист вставляется куча формул) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2020, 15:25 |
|
||
|
Excel 2013 медленно работает как com- сервер
|
|||
|---|---|---|---|
|
#18+
booby _avz, разрядность приложения и версии excel соответствуют друг другу? обе 32 booby Вообще, код показывай, почти наверно там нелепость какая-то код, конечно, ленивый и банальный. Код: pascal 1. 2. 3. 4. 5. 6. 7. на лист.Range[адрес] := массив я конечно перепишу, где можно. вопрос в том, почему во столько раз медленней, чем в ранних версиях офиса. Наш сисадмин подсказал подкрутить настройки Excel, и, надо же, удалось 14 мин ускорить до 13 с половиной. :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2020, 16:03 |
|
||
|
Excel 2013 медленно работает как com- сервер
|
|||
|---|---|---|---|
|
#18+
Соколинский Борис _avz хотя не всегда возможно (на лист вставляется куча формул) то есть можно вместо лист.Range[адрес].FormulaR1C1 := '=SUM(...)' также писать в массив[i, j] '=SUM()' и это сработает? ок, попробую. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2020, 16:07 |
|
||
|
Excel 2013 медленно работает как com- сервер
|
|||
|---|---|---|---|
|
#18+
_avz также писать в массив[i, j] '=SUM()' и это сработает? Код: pascal 1. "адрес" тут может быть не одной ячейкой. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2020, 16:15 |
|
||
|
Excel 2013 медленно работает как com- сервер
|
|||
|---|---|---|---|
|
#18+
Соколинский Борис, не, у меня идут индивидуальные формулы для ячеек. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2020, 16:18 |
|
||
|
Excel 2013 медленно работает как com- сервер
|
|||
|---|---|---|---|
|
#18+
Насколько помню работа с формулами как-то отличается в разных версиях. Т.е. может работать или не работать. Это проблема, когда у конечных пользователей разные версии экселя. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2020, 16:22 |
|
||
|
Excel 2013 медленно работает как com- сервер
|
|||
|---|---|---|---|
|
#18+
_avz, Формулы на лету вставлять вообще не есть хорошо. Лучше шаблон заготовить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2020, 16:22 |
|
||
|
Excel 2013 медленно работает как com- сервер
|
|||
|---|---|---|---|
|
#18+
13.11.2020 16:03, _avz пишет: > на лист.Range[адрес] := массив я конечно перепишу, где можно. ты удивишься на сколько оно тупит БЕЗ массивов. реально. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2020, 16:25 |
|
||
|
Excel 2013 медленно работает как com- сервер
|
|||
|---|---|---|---|
|
#18+
Соколинский Борис _avz, Формулы на лету вставлять вообще не есть хорошо. Лучше шаблон заготовить. Там непонятно, на какой строке будет сумма. там что такое: '=SUM(R[-236]C;R[-123]C;...R[-1]C)' или =sum(R[-236]C:R[-1]C) где 236, 123 - вычисляются по ходу дела ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2020, 16:29 |
|
||
|
Excel 2013 медленно работает как com- сервер
|
|||
|---|---|---|---|
|
#18+
Мимопроходящий 13.11.2020 16:03, _avz пишет: > на лист.Range[адрес] := массив я конечно перепишу, где можно. ты удивишься на сколько оно тупит БЕЗ массивов. реально. Я знаю. тут просто такая специфика данных. блок1 пять строк, промежуточная сумма 1 три строки, промежуточная сумма 2 суммы по блоку1 блок2 ... та же хрень суммы по блоку2 то есть будет много обращений типа лист.Rangе :=массив, а не одно, как хотелось бы. раз в N меньше, чем сторок, где N < 10 т.е. ускорение в N раз, N < 10 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2020, 16:35 |
|
||
|
Excel 2013 медленно работает как com- сервер
|
|||
|---|---|---|---|
|
#18+
_avz, Сделай формулы для именованного диапазона, а после выгрузки данных задай его адрес. Поищи по форуму RefersTo я выкладывал образцы (глядя на последний пост) и открой для себя функцию "Промежуточные итоги" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2020, 16:36 |
|
||
|
Excel 2013 медленно работает как com- сервер
|
|||
|---|---|---|---|
|
#18+
_avz, Кстати, у тебя именно из-за формул может тормозить. Отключи AutoCalculate перед началом выгрузки и включи по окончанию. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2020, 16:40 |
|
||
|
Excel 2013 медленно работает как com- сервер
|
|||
|---|---|---|---|
|
#18+
Соколинский Борис _avz, Сделай формулы для именованного диапазона, а после выгрузки данных задай его адрес. Поищи по форуму RefersTo я выкладывал образцы (глядя на последний пост) и открой для себя функцию "Промежуточные итоги" это да :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2020, 16:46 |
|
||
|
Excel 2013 медленно работает как com- сервер
|
|||
|---|---|---|---|
|
#18+
Соколинский Борис _avz, Кстати, у тебя именно из-за формул может тормозить. Отключи AutoCalculate перед началом выгрузки и включи по окончанию. Но всё-таки почему между 2013 и 2010 такая разница? Интересно же. И мне просто хотелось найти в Excel 2013 "волшебный флажок", чтоб всё было "как раньше" :) Наш сисадмин пока не нашёл. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2020, 16:50 |
|
||
|
Excel 2013 медленно работает как com- сервер
|
|||
|---|---|---|---|
|
#18+
Соколинский Борис _avz, Кстати, у тебя именно из-за формул может тормозить. Отключи AutoCalculate перед началом выгрузки и включи по окончанию. Но всё-таки почему между 2013 и 2010 такая разница? Интересно же. Что там они в MS так испортили, чистое любопытство. И мне просто хотелось найти в Excel 2013 "волшебный флажок", чтоб всё было "как раньше" :) Наш сисадмин пока не нашёл. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2020, 16:52 |
|
||
|
Excel 2013 медленно работает как com- сервер
|
|||
|---|---|---|---|
|
#18+
_avz Интересно же. Что там они в MS так испортили, чистое любопытство. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2020, 17:02 |
|
||
|
Excel 2013 медленно работает как com- сервер
|
|||
|---|---|---|---|
|
#18+
А что, использовать прямую запись (например XLSReadWriteII), получая в результате скорость записи < 1 сек, уже не в тренде? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2020, 17:07 |
|
||
|
Excel 2013 медленно работает как com- сервер
|
|||
|---|---|---|---|
|
#18+
13.11.2020 17:02, Соколинский Борис пишет: > По-моему, начиная с 2003 г. порча идет постоянно, с акцентами на разные фронты. "борьба за качество закончена. началась борьба за покупателя" (С) - CEO Sony Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2020, 17:10 |
|
||
|
|

start [/forum/topic.php?fid=58&msg=40017999&tid=2037865]: |
0ms |
get settings: |
6ms |
get forum list: |
9ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
153ms |
get topic data: |
6ms |
get forum data: |
2ms |
get page messages: |
56ms |
get tp. blocked users: |
1ms |
| others: | 230ms |
| total: | 467ms |

| 0 / 0 |
