我正在尝试编码 vb.net 我处境艰难 因为我不知道为什么不能运行我的代码 目的是检查 CheckBox 控件(Excel 中的表单控件)是否已选中或未选中
这里是代码,error 是 BC30512 String,Integer convert Error in IF condition
Dim Message As String
Dim xlApp As Microsoft.Office.Interop.Excel.Application
Dim xlWb As Microsoft.Office.Interop.Excel.Workbook
xlWb = xlApp.Workbooks.Open(my_excel_path)
Dim xlSt = As Microsoft.Office.Interop.Excel.Worksheet = CType(xlWb.Worksheets(sheet_name),Worksheet)
**If (xlSt.Shapes("Check Box 1").OLEFormat.Object.Value = 1) Then**
Message = "is Checked"
Else
Message = "is UnChecked"
End If
MsgBox(Message)
请帮助我
我需要一个正确的语法 我试过 xlSt 到 ActiveSheet.Shapes() 但这行不通(它在 vba Excel 中有效,所以我试过了)
VB.Net 与 VBA 有点不同,这就是你所缺少的:
Dim checkboxControl As Microsoft.Office.Interop.Excel.CheckBox
在这里插入您的代码。
然后使用这两行来检测 CheckBox 是否被选中:
checkboxControl = CType(xlWorksheet.CheckBoxes("CheckBox1"), Microsoft.Office.Interop.Excel.CheckBox)
If checkboxControl.Value = Microsoft.Office.Interop.Excel.XlTriState.xlOn Then