【发布时间】:2018-05-08 14:01:06
【问题描述】:
我正在尝试打开一个 Excel 工作簿并从 Outlook 运行一个宏。不幸的是,每次我打开工作簿时,它似乎都默认为只读模式,这意味着我无法运行我想要的宏。
这是我的代码:
Sub runPat(client As String)
'Runs a PAT using tool with client as input
Dim xlApp As Excel.Application
Set xlApp = New Excel.Application
Dim sourceWB As Workbook
Dim usr As Worksheet
Dim strFile As String
Set xlApp = CreateObject("Excel.Application")
With xlApp
.Visible = True
.EnableEvents = False
End With
'Source file, will need to be changed if PAT is ever moved
strFile = "C:\Users\albio\Dropbox\Document Creation Program\Portfolio Analysis Tool\Portfolio Analysis tool v1.0.xlsm" 'PAT File path
'Open workbook
Set sourceWB = Workbooks.Open(strFile, , False)
'Run this PAT
sourceWB.Application.Run "buttons.launchButton"
End Sub
我尝试了各种解决方案,例如在打开文件路径之前设置 IgnoreReadOnlyRecommended=True 并使用 setAttr 为 vbNormal。由于某种原因,它总是以只读模式打开,我不明白为什么?
[编辑] 工作簿通常在没有打开只读模式的情况下打开。只有在我的 Outlook VbaProject 中打开工作簿时才启用只读。
【问题讨论】:
-
@Fleury26 恐怕我的似乎也无法使用该方法,仍然以只读方式打开
-
问题似乎出在带有宏的 Excel (xlsm) 上。问题可能出在 excel 的信任问题上(从不安全的地方保护)!您可以通过转到信任中心 > 信任中心设置来更改它
标签: excel vba outlook readonly