Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Как оптимизировать данный код? Копирование данных
|
|||
|---|---|---|---|
|
#18+
Добрый день, подскажите пожалуйста как оптимизировать данный код. Т.к. на листе "222" 12 000 записей а на листе СводМи 800. Если делать так, то все происходит очень медленно... Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.07.2010, 10:45 |
|
||
|
Как оптимизировать данный код? Копирование данных
|
|||
|---|---|---|---|
|
#18+
snap2111, Избавиться от Activate прежде всего ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.07.2010, 10:46 |
|
||
|
Как оптимизировать данный код? Копирование данных
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. кстати это не вникая в суть задачи, возможно еще можно оптимизировать - не пошагово выполнять копирование, а целиком - процесс копирования диапазона не через копи пасту, а присвоение диапазонов кстати это не вникая в суть задачи, возможно реализация будет быстрее за счет того, что диапа ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.07.2010, 11:05 |
|
||
|
Как оптимизировать данный код? Копирование данных
|
|||
|---|---|---|---|
|
#18+
В конце хотел добавить про кошерный Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.07.2010, 11:14 |
|
||
|
Как оптимизировать данный код? Копирование данных
|
|||
|---|---|---|---|
|
#18+
Shamanus, а его вставлять в какой части кода? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.07.2010, 11:36 |
|
||
|
Как оптимизировать данный код? Копирование данных
|
|||
|---|---|---|---|
|
#18+
snap2111, ну если Вам лениво гуглить Код: plaintext 1. 2. 3. 4. 5. 6. 7. прогнал Ваш код с моей оптимизацией по 1500 записям Ваш код 55 секунд Мой код 32 секунды ну т.е. если учесть процессорную погрешность и особенность версии ОС и Office можно смело сказать почти в 2 раза ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.07.2010, 11:41 |
|
||
|
Как оптимизировать данный код? Копирование данных
|
|||
|---|---|---|---|
|
#18+
Shamanus, После оптимизации 2 500 записей обработал за 9 минут. С учетом того что целевой лист содержит 12 000, а откуда копируем 5800 шт. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.07.2010, 11:52 |
|
||
|
Как оптимизировать данный код? Копирование данных
|
|||
|---|---|---|---|
|
#18+
snap2111, ещё быстрее было бы - перекинуть данные в массивы и работать с ними. Не вникая в задачу - или преобразовать один из массивов, или создать третий, а в конце выгрузить на лист. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.07.2010, 12:01 |
|
||
|
Как оптимизировать данный код? Копирование данных
|
|||
|---|---|---|---|
|
#18+
snap2111, ну во первых 2500 записей это прогон 6 250 000 циклов сравнения исходя из Вашего кода и времени 11,5 тыс итераций в секунду.... ммм...маловато... у меня получается 1500 записей за 32 секунды это 2 250 000 циклов или 70 тыс итераций в секунду даже исходя из погрешностей и кеширования все равно маловато если скинете исходные данные могу покопаться в Вашем коде ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.07.2010, 12:49 |
|
||
|
Как оптимизировать данный код? Копирование данных
|
|||
|---|---|---|---|
|
#18+
Shamanusесли скинете исходные данные могу покопаться в Вашем коде а также желательно скинуть железо, на котором это обрабатывается ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.07.2010, 12:53 |
|
||
|
Как оптимизировать данный код? Копирование данных
|
|||
|---|---|---|---|
|
#18+
> Автор: Shocker.Pro > а также желательно скинуть железо, на котором это обрабатывается Да не обязательно :) Мне кажется ТС не договаривает что ему нужно в действительности и предлагает оптимизировать его видиние алгоритма. И не желает озвучить полную задачу. А насчет кардинальных ускорений уже предлагали, но ТС продолжает гнуть свою "правильную" линию партии :) Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.07.2010, 12:56 |
|
||
|
Как оптимизировать данный код? Копирование данных
|
|||
|---|---|---|---|
|
#18+
Сейчас все скину ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.07.2010, 13:12 |
|
||
|
Как оптимизировать данный код? Копирование данных
|
|||
|---|---|---|---|
|
#18+
Вот он ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.07.2010, 13:33 |
|
||
|
Как оптимизировать данный код? Копирование данных
|
|||
|---|---|---|---|
|
#18+
Еще раз ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.07.2010, 13:39 |
|
||
|
Как оптимизировать данный код? Копирование данных
|
|||
|---|---|---|---|
|
#18+
> Автор: snap2111 > Еще раз ВопросЫ: Данные в столбце ID повторятся могут? Если могут, почему перетираешь ранее найденные данные, если не могут - зачем тогда внутренний цикл по всему массиву данных? Почему бы не воспользоватся функцией ВПР? Код: plaintext Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.07.2010, 14:40 |
|
||
|
Как оптимизировать данный код? Копирование данных
|
|||
|---|---|---|---|
|
#18+
> Автор: Игорь Горбонос > Размнож эту формулу Да формула для ячейки C3. Если нужно, подкорректировать пространство таблицы искомых данных - СводМи!$A$3:$V$85 А дальше протяни в сторону и вниз. Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.07.2010, 14:43 |
|
||
|
Как оптимизировать данный код? Копирование данных
|
|||
|---|---|---|---|
|
#18+
Игорь Горбонос, (ID из первой строки уникальны) на данный момент оно так и выполняется - функцией впр, вот только я пытаюсь сделать отчет полностью автоматизированным, это один из этапов его выполнения, там потом много чего с ним делается дальше... Т.е. что бы нажать на кнопочку а оно все построило, без всяких там формул в экселе.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.07.2010, 14:50 |
|
||
|
Как оптимизировать данный код? Копирование данных
|
|||
|---|---|---|---|
|
#18+
snap2111, Для таких задач я универсальный код написал, сейчас проверил - быстро нашло 84 совпадения и скопировало данные. Но т.к. Вам надо это в другой процесс встраивать, то ссылку не дам. Одно могу сказать - два цикла не нужно. Хватит одного и поиска. Т.е. цикл по одному листу(222), поиск значения mStr = Cells(qs, 1).Value на листе СводМи по первой колонке, если нашли - копируем диапазон. Тем более, если повторов быть не должно. Можно чуть ускорить, закинув диапазон листа 222 в массив и перебирать массив. Получится лёгкий код и живенько работать будет. Имхо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.07.2010, 15:15 |
|
||
|
Как оптимизировать данный код? Копирование данных
|
|||
|---|---|---|---|
|
#18+
snap2111, попробуй так. Протестировал на глаз, нужно ещё доработать. Но зато быстрее работает. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.07.2010, 15:17 |
|
||
|
Как оптимизировать данный код? Копирование данных
|
|||
|---|---|---|---|
|
#18+
> Автор: snap2111 Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.07.2010, 15:26 |
|
||
|
Как оптимизировать данный код? Копирование данных
|
|||
|---|---|---|---|
|
#18+
не успел ответить автору. p.s. очередное подтверждение того, что форум активнее на реальных примерах, а не на гипотетических кодах ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.07.2010, 15:31 |
|
||
|
Как оптимизировать данный код? Копирование данных
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 6,671875 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.07.2010, 15:33 |
|
||
|
Как оптимизировать данный код? Копирование данных
|
|||
|---|---|---|---|
|
#18+
> Автор: Shamanus > не успел ответить автору. Я забыл добавить Код: plaintext 1. 2. 3. 4. Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.07.2010, 15:34 |
|
||
|
Как оптимизировать данный код? Копирование данных
|
|||
|---|---|---|---|
|
#18+
Игорь Горбонос, правда не успел :) у меня был вариант с сортировкой... но супротив варианта за 3 сек не попрет :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.07.2010, 15:37 |
|
||
|
|

start [/forum/topic.php?fid=60&tid=2159573]: |
0ms |
get settings: |
11ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
37ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
53ms |
get tp. blocked users: |
1ms |
| others: | 11ms |
| total: | 147ms |

| 0 / 0 |
