Страницы: 1
RSS
Запрос из книги на сетевом диске, Долгая обработка запроса
 
Добрый день!
Есть код - впр из книги (130мб)
Проблема в том что каждый запрос занимает значительное кол-во времени.
Application.ScreenUpdating = False  не помогает.

Как сделать запрос корректно?
Код
 Range("J4").FormulaR1C1 = _
        "=VLOOKUP(TEXT(,RC[-9]),'O:\123\321\333\[Розничные цены.xlsx]Лист1'!R[2]C[-9]:R[363226]C[162],16,0)"
    Range("K4").FormulaR1C1 = _
        "=VLOOKUP(TEXT(,RC[-10]),'O:\123\321\333\[Розничные цены.xlsx]Лист1'!R[2]C[-10]:R[363226]C[161],28,0)"
    Range("L4").FormulaR1C1 = _
        "=VLOOKUP(TEXT(,RC[-11]),'O:\123\321\333\[Розничные цены.xlsx]Лист1'!R[2]C[-11]:R[363226]C[160],40,0)"
Когда я ем,я глух и нем, хитер и быстр, и дьявольски умен.
 
MonsterBeer, наверное проблема в 130мб.
 
Цитата
Wild.Godlike написал:
наверное проблема в 130мб.
Согласен

Как сделать что бы было не 10 отдельных запросов а 1
Когда я ем,я глух и нем, хитер и быстр, и дьявольски умен.
 
Цитата
MonsterBeer написал:
Проблема в том что каждый запрос занимает значительное кол-во времени.
Тут нет запроса. Есть просто формула ссылающаяся на другую книгу, а с учетом указанного диапазона в 363к строк ,  это уже не быстро, да и сеть наложит ограничения. можете попытаться сделать копию файла на локальный диск и скорее всего результат будет не сильно отличатся. Экспериментировать с SQL запросом PowerQuery - можете, но неблагодарное это дело. держать такие объемы данных в excel.
По вопросам из тем форума, личку не читаю.
 
Вообще, приведенный три формулы можно объединить в одну и записывать их сразу во все три ячейки - может незначительно ускорить процесс:
Код
Range("J4:L4").FormulaR1C1 = _
        "=VLOOKUP(TEXT(,RC1),'O:\123\321\333\[Розничные цены.xlsx]Лист1'!R2C1:R364000C172,16,0)"
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Страницы: 1
Наверх