热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

VBA."类型不匹配:预期的数组或用户定义类型"

如何解决《VBA."类型不匹配:预期的数组或用户定义类型"》经验,为你挑选了1个好方法。

我是VBA的新手.我需要编写一个程序,它将生成一个整数数组,并找到最小元素的索引.我收到此错误"类型不匹配:数组或用户定义的类型预期." 我调查了许多类似的问题,但无法弄清楚出了什么问题.

Function random_integer(Min As Integer, Max As Integer)
random_integer = Int((Max - Min + 1) * Rnd + Min)
End Function

Function generate_array(Size As Integer)
Dim Arr(Size)
For i = 0 To UBound(Arr)
    Arr(i) = random_integer(i - 10, i + 10)
Next
generate_array = Arr
End Function

Function find_index_of_min_elem(ByRef Arr() As Variant)
Dim Min As Integer
Min = Arr(0)
Dim MinIndex As Integer
MinIndex = 0
For i = 1 To UBound(Arr)
    If Arr(i) 

Siddharth Ro.. 7

问题是函数Function find_index_of_min_elem(ByRef Arr() As Integer)期望Integer一个参数,你a作为一个传递Variant

a = generate_array(20)
IndexOfMinElemInA = find_index_of_min_elem(a)

您将获得的下一个错误是Dim Arr(Size) As Integer.您不能像这样对数组进行维度.

我建议阅读数组.

可能还有其他错误,但我没有检查过.



1> Siddharth Ro..:

问题是函数Function find_index_of_min_elem(ByRef Arr() As Integer)期望Integer一个参数,你a作为一个传递Variant

a = generate_array(20)
IndexOfMinElemInA = find_index_of_min_elem(a)

您将获得的下一个错误是Dim Arr(Size) As Integer.您不能像这样对数组进行维度.

我建议阅读数组.

可能还有其他错误,但我没有检查过.


恭喜达到100K!有另外一个!
推荐阅读
author-avatar
xh7212176
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有