如何解决ExecuteExcel4Macro对列> 20的解释

时间:2019-05-09 11:01:47

标签: excel vba

我正在运行一些代码,该代码从特定的列和行从封闭的工作簿中获取数据。对于最多20个列,它可以正常运行,然后将列20中的所有值解释为0。

我已经将第30列中的条目复制到第20列,并且可以很好地进行解释。看来executeexcel4macro只限于在“视图”中处理Page。不管列号有多大,如何解决该宏对每个单元格引用都起作用?

与页面设置有关吗?像印张的范围应该是什么一样?

我已经尝试为20以上的列运行代码,并交换了数据条目。它仅适用于最多20个列。尽管具有正常的文本格式单元格,但20之后的所有列都将被解释为0。

    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

通常应读取一列第6到105列中的数据,并将其一一分配给检查变量。

0 个答案:

没有答案