|
Вызов COMОбъекта Excel | ☑ | ||
---|---|---|---|---|
0
AVI_stealth
21.03.13
✎
15:10
|
Здрасте, уважаемые!
Есть база данных, нужно написать выгрузку всех данных в файл EXCEL и сохранить его на жестком диске. Трудности у меня именно с EXCEL`ем, как я ни пытался найти толковые примеры по работе с ним, ничего не выходит. Делаю так: ExcelПриложение = Новый COMОбъект("Excel.Application"); //вызываю COMОбъект ExcelФайл = ExcelПриложение.WorkBooks.Add(); //добавляю новую книгу ExcelЛист = ExcelФайл.Sheets(1); //указываю лист //потом фигачу данные, а сохранить и закрыть COMОбъект не могу //пытаюсь так ExcelФайл.WorkBooks.SaveAs(ПутьКФайлу); ExcelФайл.WorkBooks.Close(); Пишет, мол, не знаю что такое "SaveAs". Как правильно записать и закрыть этот COMОбъект? |
|||
1
kimba
21.03.13
✎
15:27
|
бери выводи в табличный документ, а потом сохраняй его в excel, делается это просто
ТабДок.Записать(ПутьВыгрузка,ТипФайлаТабличногоДокумента.XLS97); |
|||
2
SpiKe
21.03.13
✎
15:35
|
ExcelФайл.SaveAs(ПутьКФайлу);
ExcelФайл.Application.Quit(); |
|||
3
dk
21.03.13
✎
15:36
|
ExcelФайл.WorkBooks замени на ExcelФайл
|
|||
4
SpiKe
21.03.13
✎
15:37
|
||||
5
AVI_stealth
22.03.13
✎
08:36
|
(2) (3) (4) Огромное СПАСИБО, друзья!! Очень помогли!))))
|
|||
6
AVI_stealth
22.03.13
✎
08:43
|
(4) Хотя еще один вопросик))
Как установить формат ячейки нашел. А как-нибудь можно установить для всех ячеек один формат, чтобы для каждой ячейки это не прописывать в цикле? Кстати, какой номер формата "Текстовый"?? 10? |
|||
7
dk
22.03.13
✎
08:55
|
можно
через ТвойЛист.Range("A1:D5").NumberFormat или через ТвойЛист.Columns(5).NumberFormat |
|||
8
AVI_stealth
22.03.13
✎
08:58
|
(7) а если неизвестен диапазон строк, то получается по всем колонкам перечислить?
а как указать номер? я пишу так: ExcelЛист.Cells(Счетчик,4).NumberFormat = 10; Получается чушь какая-то))) не знаю как правильно номер записать и какой конкретный номер у "текстового". |
|||
9
dk
22.03.13
✎
09:00
|
что именно писать в NumberFormat смотри через запись макросов
|
|||
10
AVI_stealth
22.03.13
✎
09:01
|
(9) это как "через запись макросов"?
|
|||
11
dk
22.03.13
✎
09:02
|
кнопка в Excel меню -вид - записать макрос
|
|||
12
AVI_stealth
22.03.13
✎
09:11
|
(11) Ура!! Получилось)))
ExcelЛист.Cells(Счетчик,5).NumberFormat = "@"; Спасибо за подсказку;)) |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |