vba - 如果在两台计算机上打开相同的 Outlook 会话,则在特定计算机上运行宏
问题描述
我有两台电脑,一台处理自动报告和发送电子邮件,另一台用来做我的工作。两者都在我的会话中打开了 Outlook。
有时办公室更新,或外部应用程序崩溃,我的自动报告已完成。
我找到了可以通过接收带有特定主题的电子邮件来帮助重新启动一切的代码。
Outlook 会在报表计算机或我的工作计算机上运行宏吗?
我可以强制它在报表计算机上运行吗?
Option Explicit
Private Sub Application_NewMail()
Dim exApp As New Excel.Application
Dim wb As Excel.Workbook
Dim Msg As Outlook.MailItem
Set Msg = Application.GetNamespace("MAPI").GetDefaultFolder(olFolderInbox).Items.GetLast
If Msg.Subject = "Reinicia todo" Then
CerrarProcesos
Set wb = exApp.Workbooks.Open("C:\Users\UserName\Desktop\Alertas Renfe.xlsb")
exApp.Visible = True
End If
End Sub
Sub CerrarProcesos()
Dim oServ As Object
Dim cProc As Variant
Dim oProc As Object
Set oServ = GetObject("winmgmts:")
Set cProc = oServ.ExecQuery("Select * from Win32_Process")
For Each oProc In cProc 'Case Sensitive
If oProc.Name Like "Acs*.exe" Or oProc.Name Like "acs*.exe" Or oProc.Name Like "ACS*.exe" Or oProc.Name Like "EXCEL*" Then
oProc.Terminate
End If
Next
End Sub
解决方案
推荐阅读
- xslt - 如何格式化没有分隔符的数字
- r - R的'randomForest'库的'rfcv()'函数中的'mtry'
- java - 如果选中某些按钮,则加载不同的场景
- delphi - delphi (RIO 10.3) 可以在运行时访问组件图标(从包二进制资源?)
- angular - 在 FormData 中上传文件时 HttpHeaders 的 ContentType
- yeoman - 使用 yeoman 生成的代码创建的 .yo-repository 目录的目的是什么?
- java - 观察相机正在对焦 || !isFocusing 用于 androidx.camera.core.Camera
- python - 如何判断我的模型是否过拟合?99.96% 准确率
- terraform - Terraform aws_ssm_parameter null/empty with ignore_changes
- google-chrome - 使用 puppeteer 启用 chrome SafeBrowsing 错误