繁体   English   中英

使用Powershell将复选框和VBA代码插入Excel

[英]Insert checkbox and VBA code into Excel using Powershell

我需要有关如何在Excel中包括一个复选框并在其打勾时使Msgbox显示为“ Hello”的信息,需要帮助。 那并不是我真正需要做的,但是我可以从那里找到自己的方式。

这应该使用Powershell完成。 只是开始。

$missing = [System.Type]::missing
$excel = New-Object -Com Excel.Application

$wb = $excel.Workbooks.Add($missing)
$ws = $wb.Worksheets.Item(1)

########################################
# INSERT CHECKBOX HERE
# INSERT VBA CODE HERE
########################################

谢谢。

添加复选框非常简单:

$oleObjects = $ws.OLEObjects($missing)
$checkbox = $oleObjects.Add("Forms.CheckBox.1",$missing,0,0,$missing,$missing,$missing,22.5,21,122.25,18.75)

即时添加VBA代码使我发疯。 在C#互操作中,它将是这样的:

Microsoft.Vbe.Interop.VBProject Project = Workbook.VBProject; 
Microsoft.Vbe.Interop.VBComponent Module = Project.VBComponents.Add(Microsoft.Vbe.Interop.vbext_ComponentType.vbext_ct_StdModule); 
Microsoft.Vbe.Interop.CodeModule Code = Module.CodeModule; 
Module.Name = Name; 
Code.AddFromString(VBACode); 

在PowerShell中,VBProject.VBComponets返回null。 我对PowerShell的了解非常有限。 我想知道这是否可能是一个安全问题。 excel的最新版本对以编程方式添加VBA代码非常严格。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM