|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » VBA - [решено] VBA в EXCEL не освобождается память |
|
VBA - [решено] VBA в EXCEL не освобождается память
|
Новый участник Сообщения: 35 |
Профиль | Отправить PM | Цитировать Доброго времени суток!
В общем проблема такая: есть текстовый файл в котором 3000000 строк, мне нужно импортировать данные из файла, разбить каждую строку на столбцы (через разделитель) и поместить на листы excel в соответствии с условием; я читаю файл построчно и запихиваю в 7 динамических массивов по критериям, затем размещаю каждый массив на листе и удаляю массив (erase mas); но проблема в том, что объем памяти занимаемой excel все равно постоянно увеличивается, хотя после записи каждого массива на лист я сначала удаляю массив, а затем сохраняю книгу целиком, но память от этого не уменьшается, в итоге объем ОЗУ занимаемой EXCEL доходит до 2ГБ, хотя если замерить объем памяти который требуется для хранения заполненных массивов получается меньше 1 ГБ; Я так понимаю EXCEL держит все данные в памяти. Как бы это обойти? |
|
Отправлено: 00:04, 30-07-2013 |
Новый участник Сообщения: 40
|
Профиль | Отправить PM | Цитировать А обойтись без массивов? Зачем занимать хренову кучу памяти, если все равно разбор идет построчно?
|
Отправлено: 09:35, 30-07-2013 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Новый участник Сообщения: 35
|
Профиль | Отправить PM | Цитировать Пробовал, исполняется гораздо дольше и ещё ошибка в конце вылетает (ну это не исключаю своей корявости), но в итоге excel в памяти висит также большим куском.
Массивы использую для ускорения вставки в excel когда делаю range()=mymas вставляются данные раз в 10 быстрее чем писать в excel построчно. |
Отправлено: 09:46, 30-07-2013 | #3 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Цитата navuhodonosor:
|
|
Отправлено: 13:53, 30-07-2013 | #4 |
Новый участник Сообщения: 35
|
Профиль | Отправить PM | Цитировать Извините, что вышел из темы, просто уезжал на отдых.
Вообщем обошел проблему разбивкой на файлы, т.е. в итоговом файле только один критерий, как выяснилось больше и не надо было. Получилось 7 городов - 7 файлов, в памяти каждый не больше гига. Спасибо всем. |
|
Отправлено: 20:16, 11-08-2013 | #5 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать С массивными текстовыми файлами желательно работать как с базой данных.
|
Отправлено: 00:45, 12-08-2013 | #6 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
VBA - Объекты в VBA (Excel) | zena | Программирование и базы данных | 9 | 18-02-2012 20:36 | |
VBA - VBA Excel помогите решить | Мария74 | Программирование и базы данных | 1 | 19-02-2011 12:58 | |
Разное - Задача Excel VBA | JON4 | Microsoft Office (Word, Excel, Outlook и т.д.) | 8 | 12-12-2010 18:40 |
|