|
|
|
Оптимизация макроса по поиску и замене строковых значений
|
|||
|---|---|---|---|
|
#18+
Здравствуйте. Вопрос не практический, нужна свежая мысль по оптимизации работы макроса... Есть большой список наименований товаров (около 5000 строк), в которых встречаются различные сокращения (н-р: ж/т, н/газ, в/в, в/м) - около 300. Список располагается на обычном листе Excel. На втором листе - находится список замен, где каждому сокращению сопоставляется его полная расшифровка. Список наименований товаров приводится к нормальному виду (без сокращений) с помощью макроса. В данном макросе происходит поиск каких-либо сокращений в каждом из 5000 наименований товаров и если сокращения найдены - происходит замена сокращения на его расшифровку. В макросе при поиске сокращений приходится выполнять 5000 x 300 просмотров в цикле. Причём список замены может увеличиться и до 1000 строк. Всё это влияет на скорость обработки прайса. Вопрос: как можно оптимизировать процесс поиска и замены, так чтобы максимально сократить число просмотров? Аленочка тм ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2006, 09:05:31 |
|
||
|
Оптимизация макроса по поиску и замене строковых значений
|
|||
|---|---|---|---|
|
#18+
Сделать нормальный классификатор товаров и не использовать сокращения. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2006, 09:16:15 |
|
||
|
Оптимизация макроса по поиску и замене строковых значений
|
|||
|---|---|---|---|
|
#18+
АрхивариусСделать нормальный классификатор товаров и не использовать сокращения. это невозможно. прайсы поставляют заказчики, мы не можем диктовать свои условия. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2006, 09:23:33 |
|
||
|
Оптимизация макроса по поиску и замене строковых значений
|
|||
|---|---|---|---|
|
#18+
АленочкаЗдравствуйте. Вопрос не практический, нужна свежая мысль по оптимизации работы макроса... Есть большой список наименований товаров (около 5000 строк), в которых встречаются различные сокращения (н-р: ж/т, н/газ, в/в, в/м) - около 300. Список располагается на обычном листе Excel. На втором листе - находится список замен, где каждому сокращению сопоставляется его полная расшифровка. Список наименований товаров приводится к нормальному виду (без сокращений) с помощью макроса. В данном макросе происходит поиск каких-либо сокращений в каждом из 5000 наименований товаров и если сокращения найдены - происходит замена сокращения на его расшифровку. В макросе при поиске сокращений приходится выполнять 5000 x 300 просмотров в цикле. Причём список замены может увеличиться и до 1000 строк. Всё это влияет на скорость обработки прайса. Вопрос: как можно оптимизировать процесс поиска и замены, так чтобы максимально сократить число просмотров? Аленочка тм Вам уже пора выходить в третье измерение - подключить к EXCEL внешюю базу данных К примеру Ваша задача решается так - 1. сканируется excel-список-замен и в присоединенной базе создается индексный словарь "исходное --> замена" это максимум 1 сек 2. сканируется excel-исходный-текст по ячейкам и на каждую ячейку в базе в словаре методом "по_индексу_прямым_обращением_за_раз" ищется замена - если есть - заменяет это максимум 1 сек итого гарантированое время не более 2 сек на 10 000 строк исходного текста можете взять нашу готовую систему MX : EXCEL+DATABASE лицензия - 50 USD потребует времени на установку и на освоение ======================== mx@enters.eu ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2006, 09:31:17 |
|
||
|
Оптимизация макроса по поиску и замене строковых значений
|
|||
|---|---|---|---|
|
#18+
MX -- ALEX Вам уже пора выходить в третье измерение - подключить к EXCEL внешюю базу данных К примеру Ваша задача решается так - 1. сканируется excel-список-замен и в присоединенной базе создается индексный словарь "исходное --> замена" это максимум 1 сек 2. сканируется excel-исходный-текст по ячейкам и на каждую ячейку в базе в словаре методом "по_индексу_прямым_обращением_за_раз" ищется замена - если есть - заменяет это максимум 1 сек итого гарантированое время не более 2 сек на 10 000 строк исходного текста можете взять нашу готовую систему MX : EXCEL+DATABASE лицензия - 50 USD потребует времени на установку и на освоение ======================== как потратить 50 баксов я и сама знаю .... к тому же - обращение к БД будет дольше, чем скан массива - 100% ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2006, 09:39:47 |
|
||
|
Оптимизация макроса по поиску и замене строковых значений
|
|||
|---|---|---|---|
|
#18+
Аленочка MX -- ALEX Вам уже пора выходить в третье измерение - подключить к EXCEL внешюю базу данных К примеру Ваша задача решается так - 1. сканируется excel-список-замен и в присоединенной базе создается индексный словарь "исходное --> замена" это максимум 1 сек 2. сканируется excel-исходный-текст по ячейкам и на каждую ячейку в базе в словаре методом "по_индексу_прямым_обращением_за_раз" ищется замена - если есть - заменяет это максимум 1 сек итого гарантированое время не более 2 сек на 10 000 строк исходного текста можете взять нашу готовую систему MX : EXCEL+DATABASE лицензия - 50 USD потребует времени на установку и на освоение ======================== как потратить 50 баксов я и сама знаю .... к тому же - обращение к БД будет дольше, чем скан массива - 100% маленькая ты еще .. скан у нас хитрый, и обращение не простое - метод TQM 2 sec. - 10000 строк 120 % на спор ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2006, 10:58:36 |
|
||
|
Оптимизация макроса по поиску и замене строковых значений
|
|||
|---|---|---|---|
|
#18+
Алекс, про MX - лучше ничего не надо... А то вдруг ктото спросит, что это, а Вы не хрю, не му... Аленочка, поищите в сторону регулярных выражений... это поможет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2006, 11:04:43 |
|
||
|
Оптимизация макроса по поиску и замене строковых значений
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2006, 11:16:18 |
|
||
|
Оптимизация макроса по поиску и замене строковых значений
|
|||
|---|---|---|---|
|
#18+
АрхивариусАлекс, про MX - лучше ничего не надо... А то вдруг ктото спросит, что это, а Вы не хрю, не му... Аленочка, поищите в сторону регулярных выражений... это поможет. не - никто не спросит а нафига ? если есть регулярные выражения - как раз для Аленочки с архивариусом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2006, 14:58:18 |
|
||
|
Оптимизация макроса по поиску и замене строковых значений
|
|||
|---|---|---|---|
|
#18+
Уважаемый Алекс! Как это "Никто не спросит"??? Я спрашивал Вас про пакет МХ. Если понравится, я был готов его даже купить... После длительной переписки с Вами по е-почте ничего вразумительного от Вас я не получил. Я не получил даже элементарной презентации системы... Только извинения, что мол сейчас ничего нет, сайт не работает, сейчас переезжаем на другой сервер и т.д. Так, что может хватит трепаться о системе, возможности которой даже показать невозможно... А может быть и нет никакой системы... Странно... Зачем это все... Алекс, зачем это Вам? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2006, 16:43:49 |
|
||
|
Оптимизация макроса по поиску и замене строковых значений
|
|||
|---|---|---|---|
|
#18+
Обсуждалось здесь См. совет от Letter_D. :)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2006, 19:12:06 |
|
||
|
Оптимизация макроса по поиску и замене строковых значений
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.07.2006, 03:13:00 |
|
||
|
Оптимизация макроса по поиску и замене строковых значений
|
|||
|---|---|---|---|
|
#18+
TaranagaУважаемый Алекс! Как это "Никто не спросит"??? Я спрашивал Вас про пакет МХ. Если понравится, я был готов его даже купить... После длительной переписки с Вами по е-почте ничего вразумительного от Вас я не получил. Я не получил даже элементарной презентации системы... Только извинения, что мол сейчас ничего нет, сайт не работает, сейчас переезжаем на другой сервер и т.д. Так, что может хватит трепаться о системе, возможности которой даже показать невозможно... А может быть и нет никакой системы... Странно... Зачем это все... Алекс, зачем это Вам? ну нет никакой презентации .. а зачем - и так берут - кому действительно надо для работы хотя, конечно, придется соорудить - для порядка.. mx@enters.eu ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.07.2006, 14:20:49 |
|
||
|
|

start [/forum/topic.php?fid=61&msg=33834554&tid=2184668]: |
0ms |
get settings: |
11ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
147ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
35ms |
get tp. blocked users: |
1ms |
| others: | 243ms |
| total: | 465ms |

| 0 / 0 |
