Improve company productivity with a Business Account.Sign Up

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 231
  • Last Modified:

Adding values in an array

I am relatively new at working with arrays.  I want to add the values in one array to the values in a second array.  Something like this

Dim array1() as double
Dim array2() as Double
Dim array3() as double

array1(0) = 2
array1(1) = 5

array2(0) = 1
array2(1) = 6

this is where the line I don't know how to write would go.

If I were to debug.print array3() I want to see the following

3
11

Thanks very much in advance.
Ron
0
rfreud
Asked:
rfreud
1 Solution
 
Mike TomlinsonMiddle School Assistant TeacherCommented:
Something like:
Dim i As Long
For i = LBound(array1) To UBound(array1)
    array3(i) = array1(i) + array2(i)
    Debug.Print "array3(" & i & ") = " & array3(i)
Next i

Open in new window

0
 
Jeffrey CoachmanMIS LiasonCommented:
This works fine for me as well also:
Dim array1(0 To 100) As Double
Dim array2(0 To 100) As Double
Dim array3(0 To 100) As Double

array1(0) = 2
array1(1) = 5

array2(0) = 1
array2(1) = 6

array3(0) = array1(0) + array2(0)
array3(1) = array1(1) + array2(1)

Debug.Print array3(0) & vbCrLf & array3(1)
0
 
rfreudAuthor Commented:
I will give this a try tomorrow...  
Thanks,
Ron
0
Get 10% Off Your First Squarespace Website

Ready to showcase your work, publish content or promote your business online? With Squarespace’s award-winning templates and 24/7 customer service, getting started is simple. Head to Squarespace.com and use offer code ‘EXPERTS’ to get 10% off your first purchase.

 
hnasrCommented:
If upper bound for first array differs from the second:

Private Sub Command11_Click()
    Dim array1() As Double
    Dim array2() As Double
    Dim array3() As Double
   
    ReDim array1(3)
    ReDim array2(5)
    ReDim array3(5)
   
    Dim i As Integer
    For i = 0 To UBound(array1)
        array1(i) = i
        Debug.Print i
    Next
    For i = 0 To UBound(array2)
        array2(i) = i
        Debug.Print i
    Next
    If UBound(array1) >= UBound(array2) Then
        For i = 0 To UBound(array1)
            array3(i) = array1(i)
        Next
        For i = 0 To UBound(array2)
            array3(i) = array1(i) + array2(i)
        Next
    Else
        For i = 0 To UBound(array2)
            array3(i) = array2(i)
        Next

        For i = 0 To UBound(array1)
            array3(i) = array1(i) + array2(i)
        Next
    End If
    For i = 0 To UBound(array3)
        Debug.Print array3(i)
    Next
End Sub
0
 
Mike TomlinsonMiddle School Assistant TeacherCommented:
Yeah...I put absolutely no error checking in my snippet; just assumed that all arrays were the same size and had the same lower/upper/bounds.
0
 
GRayLCommented:
And now you run into the age old problem of storing derivable data.  There you are with a1, a2, and a3.  Someone changes a value in a1 or a2, but does not update a3 which is the sum - now what?  You have to make sure every time you view the contents of a3, it is in fact re-created.
0
 
rfreudAuthor Commented:
Thank you very very much, particularly for the additional comments.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

What Kind of Coding Program is Right for You?

There are many ways to learn to code these days. From coding bootcamps like Flatiron School to online courses to totally free beginner resources. The best way to learn to code depends on many factors, but the most important one is you. See what course is best for you.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now