Страница: 1 |
Страница: 1 |
Вопрос: Excel: издержки SQL-запросов.
Добавлено: 07.06.06 07:48
Автор вопроса:
Svan | Web-сайт:
Здравствуйте!
Проблема следующая:
Существует xls-файл, из которого выполняются SQL-запросы к внешней базе данных (в моем случае PostGreSQL). В случае сохранения этого файла в конце сеанса работы, размер его значительно увеличивется. Посмотрел его внутренность: в теле файла хранится вся история SQL-запросов за время работы с ним. Есть ли возможность каким-либо образом очищать ее.
Ответы
Всего ответов: 13
Номер ответа: 1
Автор ответа: Незнайка
Вопросов: 7
Ответов: 188
Профиль | | #1
Добавлено: 07.06.06 08:53
По моему .xls не сохраняет в себе подобной истории... Хотелось бы увидеть пример файла.
Номер ответа: 2
Автор ответа: GSerg
Вопросов: 0
Ответов: 1876
Профиль | | #2
Добавлено: 07.06.06 09:18
Да, офис любит сохранять такие вещи... написал, бывало, секретный пароль на странице в ворде, сохранил документ, стёр пароль, сохранил документ - ан нет, пароль всё ещё в файле...
Пересохранить как новый файл можно.
Номер ответа: 3
Автор ответа: Svan
ICQ: 138610609
Вопросов: 3
Ответов: 8
Web-сайт:
Профиль | | #3
Добавлено: 07.06.06 09:51
Файло большое, но в пожатом виде 50к, в распущенном 1,2М. Кидаю на мыло?
Номер ответа: 4
Автор ответа: Svan
ICQ: 138610609
Вопросов: 3
Ответов: 8
Web-сайт:
Профиль | | #4
Добавлено: 07.06.06 09:52
Не дало ничего...
Номер ответа: 5
Автор ответа: Незнайка
Вопросов: 7
Ответов: 188
Профиль | | #5
Добавлено: 07.06.06 09:53
3 - Да.
Номер ответа: 6
Автор ответа: Svan
ICQ: 138610609
Вопросов: 3
Ответов: 8
Web-сайт:
Профиль | | #6
Добавлено: 07.06.06 10:00
Отправил! В первом письме файл не приаттачен, во втором исправился.
Номер ответа: 7
Автор ответа: Незнайка
Вопросов: 7
Ответов: 188
Профиль | | #7
Добавлено: 07.06.06 10:19
Могу посоветовать следущее:
Всегда после выполнения любых запросов удаляй пустые строки и столбцы на этих листах, как ты это уже делаешь:
Даже если кажется что ячейки пустые - и вних ничего не содержится - наводи типа порядок - удаляй их!!! Делай "чистку" после каждого запроса или перед выходом из файла или сделай кнопочку"
Я выделил весь лист "Запрос" и удали с него всё - хотя там якобы ничего и не было:
Тоже самое и с листом "Цеха":
.Delete Shift:=xlUp
Columns(":IV"
.Delete Shift:=xlToLeft
Короче удаляй все с виду итак пустое.
После удаления твой файл весит 56К вместо 1,2М.
Вот такой вариант.
Номер ответа: 8
Автор ответа: Svan
ICQ: 138610609
Вопросов: 3
Ответов: 8
Web-сайт:
Профиль | | #8
Добавлено: 07.06.06 11:02
Хороший совет, но у меня почему то не срабатывает.
Даже если делаю на открытие книги и активацию соответствующих листов:
Sheets(2).Cells.Delete Shift:=xlUp
Sheets(3).Cells.Delete Shift:=xlUp
Размер токмо чуть-чуть уменшается (1,18М).
Номер ответа: 9
Автор ответа: Незнайка
Вопросов: 7
Ответов: 188
Профиль | | #9
Добавлено: 07.06.06 11:16
Ну это неправда!!!
)
Я реально щаз:
1. открыл твой файл
2. прменил
Sheets(3).Cells.Delete Shift:=xlUp
3. сохранил
4. Результат: 57.5Кбайт (58 880 байт)
Не может быть, чтобы у тебя не получилось!!!Высылаю на мыло файл!!!
Номер ответа: 10
Автор ответа: Svan
ICQ: 138610609
Вопросов: 3
Ответов: 8
Web-сайт:
Профиль | | #10
Добавлено: 07.06.06 11:57
Что-то нейдет на мыло он.
Если полностью листы удаляю - 2 и 3 - то срабатывает, а ячейки удалять - неа.
Номер ответа: 11
Автор ответа: Незнайка
Вопросов: 7
Ответов: 188
Профиль | | #11
Добавлено: 07.06.06 12:27
Повторил отправку! Но там три стоки кода:
Sheets(3).Cells.Delete Shift:=xlUp
Save
Номер ответа: 12
Автор ответа: Svan
ICQ: 138610609
Вопросов: 3
Ответов: 8
Web-сайт:
Профиль | | #12
Добавлено: 07.06.06 12:49
Ага, попробовал эти строчки. Не получилось. Офис у меня 97.
Номер ответа: 13
Автор ответа: Незнайка
Вопросов: 7
Ответов: 188
Профиль | | #13
Добавлено: 07.06.06 13:40
Ну незнаю тогда ...........................
Ставь офис 2000 - он хороший! )
Видел же сам - что файл уменьшается....до нормального состояния!!!
Вообщем, что могли насоветовали...