Rss & SiteMap

Foxtable(狐表) http://www.foxtable.com

新一代数据库软件,完美融合Access、Foxpro、Excel、vb.net之优势,人人都能掌握的快速软件开发工具!
共7 条记录, 每页显示 10 条, 页签: [1]
[浏览完整版]

标题:excel 进程无法退出

1楼
puma 发表于:2024/2/26 8:35:00
问题:excel 进程无法自动退出,每次需要手动关闭进程?
还有其他关闭的命令吗?

一个 app 进程只能打开一个excel文件?

代码
Dim App As New MSExcel.Application
App.Visible = True
app.EnableEvents =False
app.DisplayAlerts = False '关闭excel 警告
app.AskToUpdateLinks = False '关闭excel 数据更新提示
Dim sWb As MSExcel.Workbook '原始文件
Dim dwb As MSExcel.Workbook '目标文件
swb = app.Workbooks.Open(FileName:=sFilePath , UpdateLinks:=0)
....代码

dwb.Close(SaveChanges:=True) '顺序不能更改
swb.Close(SaveChanges:=False) '顺序不能更改
App.quit

图片点击可在新窗口打开查看此主题相关图片如下:下载.png
图片点击可在新窗口打开查看

2楼
有点蓝 发表于:2024/2/26 8:41:00
放到try里面

Dim App As New MSExcel.Application
Try
   App.Visible = True
app.EnableEvents =False
....代码

dwb.Close(SaveChanges:=True) '顺序不能更改
swb.Close(SaveChanges:=False) '顺序不能更改
App.quit
Catch ex As Exception
   msgbox(ex.message)
App.quit
End Try
3楼
puma 发表于:2024/2/26 10:25:00
没有异常
4楼
有点蓝 发表于:2024/2/26 10:27:00
那就不是程序的问题。App.quit肯定可以正常退出的。要么是之前残留的进程,要么是其它软件比如杀毒软件的原因
5楼
puma 发表于:2024/2/26 15:00:00
有时候可以退出,有时候有残留。
我只能用方法终止,进程。
    Public Function KillExcel()
        Dim processName As String = "EXCEL" '将此处的“processname”更改为需要关闭的进程名称或ID
        For Each proc In Process.GetProcesses()
            If proc.ProcessName.ToLower().Contains(processName.ToLower()) Then
                If proc.MainWindowTitle = "" Then
                    proc.Kill()
                End If

            End If
        Next
    End Function
6楼
puma 发表于:2024/2/26 15:02:00
我感觉,退出的时候,只是关闭excel,没有终止进程
以下是引用有点蓝在2024/2/26 10:27:00的发言:
那就不是程序的问题。App.quit肯定可以正常退出的。要么是之前残留的进程,要么是其它软件比如杀毒软件的原因我

7楼
有点蓝 发表于:2024/2/26 15:17:00
App.quit肯定可以正常退出,包括中止进程
[此贴子已经被作者于2024/2/26 15:17:24编辑过]
共7 条记录, 每页显示 10 条, 页签: [1]

Copyright © 2000 - 2018 foxtable.com Tel: 4000-810-820 粤ICP备11091905号

Powered By Dvbbs Version 8.3.0
Processed in .02344 s, 2 queries.