请问关闭所有EXCEL.Application对象的代码该如何写?

irischenxi 2004-09-03 04:55:20
在VB中打印EXCEL报表,可能创建几个EXCEL.Application对象xlsApp,请问关闭所有EXCEL.Application对象的代码该如何写?
...全文
139 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
irischenxi 2004-10-26
  • 打赏
  • 举报
回复
谢谢!容我研究一下!
鸡蛋矿泉水 2004-10-23
  • 打赏
  • 举报
回复
你可以杀掉这个进程:这是一个例子,其中exefilename:='excel.exe'就可以了
function KillTask(ExeFileName: string): Integer;
const
PROCESS_TERMINATE = $0001;
var
ContinueLoop: BOOL;
FSnapshotHandle: THandle;
FProcessEntry32: TProcessEntry32;
begin
Result := 0;
FSnapshotHandle := CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
FProcessEntry32.dwSize := SizeOf(FProcessEntry32);
ContinueLoop := Process32First(FSnapshotHandle, FProcessEntry32);

while Integer(ContinueLoop) <> 0 do
begin
if ((UpperCase(ExtractFileName(FProcessEntry32.szExeFile)) =
UpperCase(ExeFileName)) or (UpperCase(FProcessEntry32.szExeFile) =
UpperCase(ExeFileName))) then
Result := Integer(TerminateProcess(
OpenProcess(PROCESS_TERMINATE,
BOOL(0),
FProcessEntry32.th32ProcessID),
0));
ContinueLoop := Process32Next(FSnapshotHandle, FProcessEntry32);
end;
CloseHandle(FSnapshotHandle);
end;
沐NeMo 2004-09-14
  • 打赏
  • 举报
回复
API(进程)函数:我指的是有关进程的API函数。
沐NeMo 2004-09-14
  • 打赏
  • 举报
回复
用API(进程)函数来判断进程里是否有EXCEL.Application
再关闭所有打开的xlsapp
---------
xlsapp.close
xlsapp.quit
Set xlsapp = nothing
irischenxi 2004-09-14
  • 打赏
  • 举报
回复
可能没讲清楚,我是指的如何识别所有打开的xlsapp,并将它们关闭。
Excelsior 2004-09-09
  • 打赏
  • 举报
回复
xlsapp.quit()
Set xlsapp = nothing
yxw1314 2004-09-07
  • 打赏
  • 举报
回复
xlsapp.quit;

5,139

社区成员

发帖
与我相关
我的任务
社区描述
其他开发语言 Office开发/ VBA
社区管理员
  • Office开发/ VBA社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧