我正在运行一些从封闭的工作簿中获取数据的代码。对于最多20个列,它可以正常运行,然后将列20中的所有值解释为0。
我已经将第30列中的条目复制到第20列,并且可以很好地进行解释。
看来executeexcel4macro
仅限于在“视图”中处理Page。不管列号有多大,如何解决该宏对每个单元格引用都起作用?
与页面设置有关吗?像印张的范围应该是什么一样?
Function xl4Value(strParam As String) As Variant
xl4Value = ExecuteExcel4Macro(strParam)
End Function
Dim intRow As Integer, intCol As Integer
Dim strSource As String
Dim Path As String
Dim Register As String
Dim Check As Variant
Path = "K:\Data\PRD-DEx\ePPC"
Register = "Beschichtungsdaten"
For intRow = 6 To 105
intCol = 20
strSource = _
"'" & _
Path & _
"\[" & Charge & ".xls" & _
"]" & Register & _
"'!R" & intRow & "C" & intCol
check = xl4Value(strSource)
Next intRow
我仅使用check来读取,调试时该条目是什么 变量Charge是文件名称结构的一部分,并在其他位置定义。
基本上应该只给我表格Beschichtungsdaten
中第30列和第6至105行中的值。