首页 > 解决方案 > 如何找到数组vba的长度

问题描述

Sub Test4()

Public Function GetLength(a As Variant) As Integer
   If IsEmpty(a) Then
      GetLength = 0
   Else
      GetLength = UBound(a) - LBound(a) + 1
   End If




End Function

基本上试图找到两个数组的长度,并且对如何使用这段代码有点困惑。不确定在哪里放置什么以及如何使其正常工作。任何帮助,将不胜感激!

标签: arraysexcelvba

解决方案


您是否因为需要将功能与子功能分开而感到困惑?您应该将该函数称为:

Sub Test4()
    Dim arr As Variant
    arr = Array(1, 2, 3)
    If IsArray(arr) Then Debug.Print GetLength(arr)
End Sub

Public Function GetLength(a As Variant) As Long
    GetLength = UBound(a) - LBound(a) + 1    
End Function

IsEmpty如果您要始终初始化,我忽略了arr,但如果您愿意,可以将其放回去。一般来说,如果您对如何调用函数并返回它们的值感到困惑。看看MS Docs


推荐阅读