【问题标题】:Application.Index results in Compile Error: Type mismatch: Array or user-defined type expectedApplication.Index 导致编译错误:类型不匹配:预期为数组或用户定义类型
【发布时间】:2017-11-17 16:28:14
【问题描述】:

我知道这个错误在论坛上弹出很多,但我看到的帖子都没有同样的问题。尝试使用 Application.Index 函数对二维数组进行切片时出现编译错误。我之前使用过该函数进行简单的索引,但在网络上有多个切片示例。

下面是代码。它总是突出显示“.index”并给我编译错误。我尝试将数组转换为双精度、整数和变体,但没有任何效果。请帮忙。

    Dim test_z(2, 2) As Double

     Dim new_z As Double

    'fill the text_z array with values

    test_z(0,0) = 1

    'etc....

    new_z = Application.index(test_z, 1, 0)

【问题讨论】:

  • 代码在我的电脑上编译并运行。
  • new_z 是如何声明的?
  • 将 new_z 变暗为 Double

标签: vba excel indexing


【解决方案1】:

Index 如果您将 0 作为最后一个参数传递,则返回一个数组。你不能把它分配给Double - 也许试试

Dim new_z As Variant

【讨论】:

  • 我曾尝试过这样做: Dim new_z() As Double 但这也没有用,所以我放弃了。不过,这解决了它。谢谢。
  • 我只想添加该索引,在这种情况下返回一个数组,但如果您指定行和列索引,它也可以返回一个双精度
猜你喜欢
  • 2013-10-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-04-30
  • 2022-10-03
  • 1970-01-01
相关资源
最近更新 更多