2016-08-08 6 views
0

Я пишу программу foxpro, которая генерирует отчет от Excel. В последнем процессе есть два (2) excel, сгенерированных программой. Я создал новую книгу и скопировал два выходных листа excel в новую книгу. Как я могу закрыть два файла excel?excel закрыть конкретный рабочий лист

мой код

**creating new workbook 
XL = tmp.application 
XL.workbooks.ADD() 
XL.visible = .T. 
XLsheet = XL.ActiveSheet 

**opening the aging excel output 
sheetdir=SYS(5)+SYS(2003)+"\temp\EXCEL1.xls" 
XL.workbooks.OPEN(sheetdir) 
XL.worksheets.COPY(XLsheet) 
XL.ActiveSheet.UsedRange.EntireColumn.Autofit 
XL.ActiveSheet.name="P1" 
xl.cells(1,1).value="xx" 

XLsheet = XL.ActiveSheet 
**opening the unvalidated excel output 
sheetdir=SYS(5)+SYS(2003)+"\temp\EXCEL2.xls" 
XL.workbooks.OPEN(sheetdir) 
XL.worksheets.COPY(XLsheet) 
XL.ActiveSheet.UsedRange.EntireColumn.Autofit 
XL.ActiveSheet.name="P2" 

ответ

0

Вот что я делаю:

#define xlNormal 39 && defines the version of Excel 
oxl = createobject("Excel.Application") 
oxl.Workbooks.add() 
oBook = oxl.ActiveWorkbook() 
oxl.visible = .f. 
osheet = oxl.activesheet 

&& update the worksheet 

oxl.DisplayAlerts = .f. && do not invoke any dialog 

oBook.saveas(mfilex,xlNormal) 
&& you can use oBook.Close() if you just want to close the book without saving 

oxl.quit() 
release oxl 
+0

Но мне нужно в данный момент открыть сводный первенствовать. Я думал, могу ли я использовать переместить лист excel в свою рабочую книгу. – Vic

+0

Попробуйте скопировать и вставить: http://stackoverflow.com/questions/34996991/what-is-the-best-way-to-automate-copy-and-paste-specific-ranges-in-excel – Missy

+1

У вас нет необходимо скопировать и вставить. Существует метод Copy(), который вы можете использовать для копирования листа из другой книги и/или листа. –

0

Вы можете использовать Close() метод Workbook.

PS: Пожалуйста, проверьте свой предыдущий вопрос (ы) и закройте < g> их.

Смежные вопросы