发布于 2006-09-07 09:52:17
0楼
用这个函数来发送消息来实现:
LRESULT SendMessage(
HWND hWnd, // handle of destination window
UINT Msg, // message to send
WPARAM wParam, // first message parameter
LPARAM lParam // second message parameter
);
代码如下:
HWND hwnd;
hwnd = FindWindow(NULL,"Microsoft Excel - 这里写你的文件的名称");
SendMessage(hwnd,WM_CLOSE,0,0);
你的问题属于内存泄露问题,你每次定义了对象:
Dim objExcelApp
Set objExcelApp = CreateObject("Excel.Application")
……
。
。
处理任务
。
。
……
objExcelApp.Workbooks.Close
objExcelApp.Quit
Set objExcelApp = Nothing
上面的代码要配对使用——你使用了前面两句在内存中定义了一个对象excel之后,你也要后面的三句来释放内存中你定义的对象excel,否则你只定义不释放内存里肯定还有excel了除非你计算机掉电了,这样重复开辟那么多内存,内存不爆炸都难呀!
就像C语言中fopen()函数和fclose()函数要配对使用,否则文件打开了没有关闭肯定还没内存中,你再打开它就重新开辟内存了,你这样不停进行下去,你的内存就爆炸了。
雄关漫道真如铁,而今迈步从头越!