|
Быстрый поиск в двумерном массиве vba
|
|||
---|---|---|---|
#18+
Есть у кого-нибудь такая функция? Только для текстовых массивов? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.12.2017, 13:47 |
|
Быстрый поиск в двумерном массиве vba
|
|||
---|---|---|---|
#18+
BlackeAngel, поиск нужен в определенном столбце/строке или по всему массиву? Массив отсортирован? (если да, поиск можно сделать на порядок быстрее) Откуда берется массив? Если он считывается с листа Excel или из таблицы Word, можно задействовать методы Find для документа. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.12.2017, 15:10 |
|
Быстрый поиск в двумерном массиве vba
|
|||
---|---|---|---|
#18+
Казанский, Массив отсортирован, по одному столбцу. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.12.2017, 15:50 |
|
Быстрый поиск в двумерном массиве vba
|
|||
---|---|---|---|
#18+
КазанскийОткуда берется массив? Если он считывается с листа Excel или из таблицы Word, можно задействовать методы Find для документа. Берется из recordset'а и кладется в массив. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.12.2017, 15:51 |
|
Быстрый поиск в двумерном массиве vba
|
|||
---|---|---|---|
#18+
BlackeAngel, Код: vbnet 1. 2. 3.
... |
|||
:
Нравится:
Не нравится:
|
|||
07.12.2017, 19:54 |
|
Быстрый поиск в двумерном массиве vba
|
|||
---|---|---|---|
#18+
big-duke, Это к чему? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.12.2017, 19:56 |
|
Быстрый поиск в двумерном массиве vba
|
|||
---|---|---|---|
#18+
для двумерного Код: vbnet 1. 2. 3.
... |
|||
:
Нравится:
Не нравится:
|
|||
07.12.2017, 19:58 |
|
Быстрый поиск в двумерном массиве vba
|
|||
---|---|---|---|
#18+
BlackeAngelbig-duke, Это к чему? Это к тому как искать в массиве. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.12.2017, 19:58 |
|
Быстрый поиск в двумерном массиве vba
|
|||
---|---|---|---|
#18+
big-duke, У меня уже в массиве, массив не берется с листа. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.12.2017, 19:59 |
|
Быстрый поиск в двумерном массиве vba
|
|||
---|---|---|---|
#18+
BlackeAngelbig-duke, У меня уже в массиве, массив не берется с листа. Это для примера. Используйте сразу ваш массив и WorksheetFunction.VLookup ... |
|||
:
Нравится:
Не нравится:
|
|||
07.12.2017, 20:03 |
|
Быстрый поиск в двумерном массиве vba
|
|||
---|---|---|---|
#18+
big-duke, На сколько это быстрее перебора? И на сколько это быстрее бинарного поиска? Или поиска половинного деления? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.12.2017, 20:09 |
|
Быстрый поиск в двумерном массиве vba
|
|||
---|---|---|---|
#18+
BlackeAngel, Понятия не имею. Вы спросили про функцию для поиска в массиве. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.12.2017, 20:26 |
|
Быстрый поиск в двумерном массиве vba
|
|||
---|---|---|---|
#18+
big-duke, я просил быструю ... |
|||
:
Нравится:
Не нравится:
|
|||
07.12.2017, 20:27 |
|
Быстрый поиск в двумерном массиве vba
|
|||
---|---|---|---|
#18+
BlackeAngel, У вас есть доказательства того, что WorksheetFunction.VLookup - медленная функция ? Что мешает взять и сравнить ? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.12.2017, 20:30 |
|
Быстрый поиск в двумерном массиве vba
|
|||
---|---|---|---|
#18+
big-duke, Вот завтра и сравню на 3млн записях ... |
|||
:
Нравится:
Не нравится:
|
|||
07.12.2017, 20:35 |
|
Быстрый поиск в двумерном массиве vba
|
|||
---|---|---|---|
#18+
А пока жду ещё предложения... ... |
|||
:
Нравится:
Не нравится:
|
|||
07.12.2017, 20:36 |
|
Быстрый поиск в двумерном массиве vba
|
|||
---|---|---|---|
#18+
BlackeAngel, 1М записей ~ 400ms ... |
|||
:
Нравится:
Не нравится:
|
|||
07.12.2017, 20:41 |
|
Быстрый поиск в двумерном массиве vba
|
|||
---|---|---|---|
#18+
big-duke, Тогда мои данные будет этот метод обрабатывать 1,4E11ms... Что то не быстро... ... |
|||
:
Нравится:
Не нравится:
|
|||
07.12.2017, 20:51 |
|
Быстрый поиск в двумерном массиве vba
|
|||
---|---|---|---|
#18+
BlackeAngel, А какой у вас лимит времени на обработку ? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.12.2017, 20:52 |
|
Быстрый поиск в двумерном массиве vba
|
|||
---|---|---|---|
#18+
big-duke, час ... |
|||
:
Нравится:
Не нравится:
|
|||
07.12.2017, 20:53 |
|
Быстрый поиск в двумерном массиве vba
|
|||
---|---|---|---|
#18+
BlackeAngel, тогда почему поиск в 1 миллионе строк за 400 миллисекунд это медленно ? Сколько операций поиска нужно выполнить ? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.12.2017, 20:56 |
|
Быстрый поиск в двумерном массиве vba
|
|||
---|---|---|---|
#18+
big-duke, (500000строк*70000раз)*4раза. Миллионы для того чтоб удобней время считать. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.12.2017, 21:01 |
|
Быстрый поиск в двумерном массиве vba
|
|||
---|---|---|---|
#18+
Могу только добавить что перебором массива это заняло 7 часов. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.12.2017, 21:13 |
|
Быстрый поиск в двумерном массиве vba
|
|||
---|---|---|---|
#18+
BlackeAngel, Есть уверенность в том, что (500000строк*7000раз)*4раза это оптимальное решение вашей задачи. Вдруг достаточно будет 500000строк*1раз? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.12.2017, 22:35 |
|
Быстрый поиск в двумерном массиве vba
|
|||
---|---|---|---|
#18+
BlackeAngel, если поиск идет по отсортированному столбцу, можно использовать WorksheetFunction.VLookup или WorksheetFunction.Match с последним аргументом =1, это "интервальный" поиск, т.е. методом половинного деления или еще более оптимизированный. В случае миллионного массива это будет быстрее на 2-3 ПОРЯДКА. Правда, надо еще проверить, что найденное значение равно искомому: Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12.
... |
|||
:
Нравится:
Не нравится:
|
|||
07.12.2017, 22:38 |
|
|
start [/forum/topic.php?fid=61&msg=39566229&tid=2172460]: |
0ms |
get settings: |
7ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
34ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
74ms |
get tp. blocked users: |
3ms |
others: | 283ms |
total: | 440ms |
0 / 0 |