Variant app, wbs, wb;
app = Variant::GetActiveObject("Excel.Application");
wbs = app.OlePropertyGet("WorkBooks");
wb = wbs.Exec(Function("Item") << "Book1");
//wb = wbs.Exec(Function("Item") << 1);
wb.OleProcedure("Close");
//на худой конец...
//app.OleProcedure("Quit");
Как сказать Excel закрыть документ, или убить как приложение?
В Экселе открыты несколько книг, как закрыть один из документов, желательно сохранив изменения (предполагается, что книга уже была сохранена)?
Ну, или на худой конец, как вообще убить весь процесс Excel.
В общем виде предполагается экстренное завершение экселя и XOR'ка конкретного документа. (Типа, пришли с проверкой... ;) )
Цитата:
Originally posted by &y JOKER
Собссно сабж...
В Экселе открыты несколько книг, как закрыть один из документов, желательно сохранив изменения (предполагается, что книга уже была сохранена)?
Ну, или на худой конец, как вообще убить весь процесс Excel.
В общем виде предполагается экстренное завершение экселя и XOR'ка конкретного документа. (Типа, пришли с проверкой... ;) )
Собссно сабж...
В Экселе открыты несколько книг, как закрыть один из документов, желательно сохранив изменения (предполагается, что книга уже была сохранена)?
Ну, или на худой конец, как вообще убить весь процесс Excel.
В общем виде предполагается экстренное завершение экселя и XOR'ка конкретного документа. (Типа, пришли с проверкой... ;) )
Код:
Вот, кстати, чего я еще нарыл по этому вопросу:
Цитата:
Вопрос. Как закрыть документ Excel ?
try{
App.OlePropertyGet("WorkBooks",1).OleProcedure("Close");
}catch(...){
ShowMessage("Не забудьте сами закрыть Excel.");
}
// закрыть сам Excel
App.OleProcedure("Quit");
источник: cbuilder.ru
#include <utilcls.h>
ExcelApp = Variant::GetActiveObject("Excel.Application");
Variant WorkBooks =ExcelApp.OlePropertyGet("WorkBooks");
Variant WorkBook=WorkBooks.OlePropertyGet("Item","Моя крутая книга");
WorkBook.OleProcedure("Activate");
ExcelApp.OlePropertySet("DisplayAlerts", false);
WorkBook.OleProcedure("Save");
WorkBook.OleProcedure("Close");
ExcelApp.OlePropertySet("DisplayAlerts", true);