【发布时间】:2017-01-18 12:59:28
【问题描述】:
简介。:在我的公司,我们在 Excel 中安装了一个安全插件,阻止我们在不输入所需参数的情况下保存新的 Excel 工作簿。
挑战:使用SendKeys 发送此 Excel 插件所需的密钥。
问题:当加载项屏幕弹出时(如下面的屏幕截图所示),代码似乎没有继续到这一行:SendKeys " ", True。
我的代码(相关部分)
编辑 1:下面的代码在 For 循环内,我正在将每个用户的过滤数据库导出给该用户。所以每次我尝试为其中一个用户保存文件时,我都会遇到加载项(我需要在For 循环中“绕过”它)。
' sort the PM's workbook , hide source data
Application.DisplayAlerts = False
NewWB.Sheets("Combined").Visible = False
NewWB.Sheets("Sheet3").Delete
NewWB.SaveAs "Budget usage - " & Year(Date) & "-" & Month(Date - 30) & " " & PMList(r)
Dim i As Long
SendKeys " ", True ' <-- it doesn't get to this line when the Excel Add-In pops up
For i = 1 To 3
SendKeys "+{DOWN}", True
Next i
SendKeys "{ENTER}", True
For i = 1 To 4
SendKeys "+", True
Next i
SendKeys "{ENTER}", True
【问题讨论】:
-
您可以访问插件的代码吗?你能改一下代码,把表格显示为
UserForm1.Show vbModeless吗? -
@Vityata 不,我希望 :)
-
插件是否有任何公共访问权限,所以
MyAddIn.那么在点后intellisense 说什么,可以设置为MyAddin.Value=ValueToSet -
@Nathan_Sav 似乎没有,当我使用
For Each ad In Application.AddIns遍历所有加载项时,它不存在。 -
它可能是一个 COM 插件写的 o/s VBA。