问题描述
我正在尝试使用以下代码打开xlsm(启用Excel宏的工作簿)作为VB.NET中Windows窗体的子窗口。
xlsm作为Forms的子级被打开,但是在运行宏时,所有选项(例如File,Home,insert)在xlsm中均显示为灰色。
代码:
导入System.Runtime.InteropServices 导入Excel = Microsoft.Office.Interop.Excel 公开课表格2 将hwnd1作为IntPtr 私有子Form2_Load(作为对象发送,作为EventArgs发送)处理MyBase.Load
Dim excApp As New Excel.Application()
excApp.Visible = True
Dim wb As Excel.Workbook = excApp.Workbooks.Open("C:\xxyy\SampleMacro.xlsm",[ReadOnly]:=False)
hwnd1 = CType(excApp.Hwnd,IntPtr)
SetParent(hwnd1,Me.Handle)
MoveWindow(hwnd1,Me.Width,Me.Height,True)
End Sub
<DllImport("user32.dll")>
Public Shared Function SetParent(hWndChild As IntPtr,hWndNewParent As IntPtr) As IntPtr
End Function
<DllImport("user32.dll")>
Public Shared Function MoveWindow(hwnd As IntPtr,x As Integer,y As Integer,nWidth As Integer,nheight As Integer,repaint As Boolean) As Boolean
End Function
结束班级
环境: 操作系统名称:Microsoft Windows 10 Enterprise 操作系统版本:10.0.15063 N / A内部版本15063
系统类型:基于x64的PC
Excel版本:Office 365 MSO(16.0.12527.21230)32位的Microsoft Excel
尝试了各种Excel->信任中心->信任中心设置->宏设置,行为相同。
Microsoft.Office.Interop.Excel-版本:1.9.0.0
.Net框架4.8
请在运行宏后帮助以读写模式打开xlsm。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)