如何實現不同下標區間(如 1-100 和 50-150)構成的數組相加?
[max(L1,L2), min(U1,U2)]。result[i] = arr1[i] + arr2[i]。Dim arr1(1 To 100) As Double, arr2(50 To 150) As Double
Dim res() As Double
Dim lo As Long, hi As Long
lo = IIf(LBound(arr1) > LBound(arr2), LBound(arr1), LBound(arr2))
hi = IIf(UBound(arr1) < UBound(arr2), UBound(arr1), UBound(arr2))
If lo <= hi Then
ReDim res(lo To hi)
For i = lo To hi
res(i) = arr1(i) + arr2(i)
Next
Else
MsgBox "無重疊下標,無法相加"
End If
VB6 數組下標可自定義起始值(Dim arr(5 To 10)),利用 LBound/UBound 獲取邊界,避免硬編碼。