我从临时Excel工作簿运行VBA它将执行的操作是“在另一个路径中打开启用宏的Excel并将值从单元格C3中提取到临时Excel”。但问题是,每当我从该路径打开Excel工作簿时,它将显示两个框。跳过输入框或任何错误消息
1)一些错误(我不知道,错误的名字,因为宏密码在Excel中保护的文件,否则建议如何发送“回车”键,跳过这个错误。)
2)输入框(这种情况下,我只需要输入,就是这样。)
有没有什么办法从其他关闭的工作簿中获取数据验证下拉值而不打开它。
Sub macro1()
Dim wrk As Workbook
Set wrk = Workbooks.Open("D:\Test\Test.xlsm") Workbooks("Book1.xlsm").Activate
ActiveSheet.Range("h10") = wrk.Sheets(1).Range("c2").Validation.Formula1 wrk.Close SaveChanges:=False
End Sub
上面是我现在实际使用的代码。但是这个代码将打开文件。我需要值而不打开文件。
也许看看[SendKeys](https://msdn.microsoft.com/en-us/library/aa266279(v = vs.60).aspx)。 – Jeeped
你能分享这两个截图吗? [Here](http://stackoverflow.com/questions/16174469/unprotect-vbproject-from-vb-code/16176557#16176557)是处理这些盒子的可靠方法。它使用的API而不是的SendKeys –
子宏1() 昏暗WRK作为工作簿 集WRK = Workbooks.Open( “d:\测试\ Test.xlsm”)。 工作簿( “Book1.xlsm”)激活 ActiveSheet。范围(“h10”)= wrk.Sheets(1).Range(“c2”)。Validation.Formula1 wrk.Close SaveChanges:= False End Sub 上面的代码我在临时文件中使用它。当试图打开“Test.xlsm”时,它会显示我在问题中提到的2个框。 –