我正在尝试在一些具有一些宏的 Excel 工作表上自动化数据填充。现在excel受到保护,我无法获得密钥。现在我可以运行宏,但是当我尝试传递参数时,我得到参数不匹配。
如果我只是使用名称运行宏,我会得到inputbox
一个额外的参数作为输入,并自动为列生成一些值。我必须手动输入这个值到inputbox
现在。有什么方法可以使该过程自动化,即捕获宏在 vb.net 脚本中抛出的输入框并从那里输入值?即,我想运行宏,在弹出窗口要求我输入一些值后,使用 vb.net 代码将值输入到该弹出窗口。
这是我到目前为止所拥有的
Public Class Form1
Dim excelApp As New Excel.Application
Dim excelWorkbook As Excel.Workbook
Dim excelWorkSheet As Excel.Worksheet
Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
excelWorkbook = excelApp.Workbooks.Open("D:/excelSheets/plan_management_data_templates_network.xls")
excelApp.Visible = True
excelWorkSheet = excelWorkbook.Sheets("Networks")
With excelWorkSheet
.Range("B7").Value = "AR"
End With
excelApp.Run("createNetworks")
// now here I would like to enter the value into the createNetworks Popup box
excelApp.Quit()
releaseObject(excelApp)
releaseObject(excelWorkbook)
End Sub
宏定义
createNetworks()
//does so basic comparisons on existing populated fields
//if true prompts an inputbox and waits for user input.
这也使我的 vb.net 脚本无法移动到下一行。