|
Excel. Cells.Find...
| ☑ |
0
Zixxx
03.05.12
✎
19:28
|
В книге Excel содержится примерно 100 000 ячеек, которые содержат текст "_name_". Мне необходимо найти эти ячейки и для каждой установить определенное значение.
Сейчас я делаю это следующим образом, поиск в цикле:
Ячейка = Страница.Cells.Find("_name_");
В итоге получается нереально долго и чем дальше мы обходим цикл тем поиск замедляется, по замеру производительности этот небольшой кусок кода составляет 97% всего времени.
Подскажите как решить проблему и увеличить скорость поиска? Есть ли у кого-нибудь примеры на "ADODB.Connection"?
|
|
1
izekia
03.05.12
✎
19:32
|
или сортируй, или делай через адо, примера естественно нет)
|
|
2
izekia
03.05.12
✎
19:34
|
погоди, а тебе нужно установить значение в зависимости от значений в строке?
|
|
3
Zixxx
03.05.12
✎
19:39
|
(2) В ячейке находится текст "_name_a1", я для этой ячейки указываю имя "a1", а текст "_name_a1" удаляю.
|
|
4
izekia
03.05.12
✎
19:40
|
(3) а строки пронумерованы?
|
|
5
izekia
03.05.12
✎
19:40
|
если порядок строк не имеет значения, то сортируй и меняй
|
|
6
izekia
03.05.12
✎
19:41
|
хотя адо вроде должно быстрее быть, поищи пример
|
|
7
Zixxx
03.05.12
✎
19:42
|
(6) ок, ищу пример...
|
|
8
izekia
03.05.12
✎
19:44
|
я не помню, будут ли проблемы там с апдейтом строк
только это вб
|
|
9
izekia
03.05.12
✎
20:05
|
вот на вб небольшой пример,только там инглиш
|
|
10
izekia
03.05.12
✎
20:05
|
|
|
11
izekia
03.05.12
✎
20:05
|
с условием, а потом ты можешь обрабатывать записи меняя значения, если я не ошибаюсь
|
|
12
Zixxx
03.05.12
✎
20:33
|
(11) Ок, спасибо
|
|
13
Torquader
03.05.12
✎
22:43
|
А сразу сделать именованные ячейки,чтобы просто перебрать их коллекцию и установить значения - насколько я помню - заполнение шаблона excel именно так и делается.
|
|
14
Zixxx
04.05.12
✎
05:24
|
(13) Я сохраняю табличный документ в xls, при этом именованные ячейки пропадают. Как сделать так чтобы они сохранялись я так и не нашел.
|
|
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший