Solved

Adding values in an array

Posted on 2012-03-19
7
207 Views
Last Modified: 2012-03-20
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
Comment
Question by:rfreud
7 Comments
 
LVL 85

Accepted Solution

by:
Mike Tomlinson earned 500 total points
ID: 37739516
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
 
LVL 74

Expert Comment

by:Jeffrey Coachman
ID: 37739535
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
 

Author Comment

by:rfreud
ID: 37739549
I will give this a try tomorrow...  
Thanks,
Ron
0
Three Reasons Why Backup is Strategic

Backup is strategic to your business because your data is strategic to your business. Without backup, your business will fail. This white paper explains why it is vital for you to design and immediately execute a backup strategy to protect 100 percent of your data.

 
LVL 30

Expert Comment

by:hnasr
ID: 37740015
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
 
LVL 85

Expert Comment

by:Mike Tomlinson
ID: 37740024
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
 
LVL 44

Expert Comment

by:GRayL
ID: 37740317
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
 

Author Closing Comment

by:rfreud
ID: 37741991
Thank you very very much, particularly for the additional comments.
0

Featured Post

Migrating Your Company's PCs

To keep pace with competitors, businesses must keep employees productive, and that means providing them with the latest technology. This document provides the tips and tricks you need to help you migrate an outdated PC fleet to new desktops, laptops, and tablets.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

The first two articles in this short series — Using a Criteria Form to Filter Records (http://www.experts-exchange.com/A_6069.html) and Building a Custom Filter (http://www.experts-exchange.com/A_6070.html) — discuss in some detail how a form can be…
Introduction The Visual Basic for Applications (VBA) language is at the heart of every application that you write. It is your key to taking Access beyond the world of wizards into a world where anything is possible. This article introduces you to…
Get people started with the utilization of class modules. Class modules can be a powerful tool in Microsoft Access. They allow you to create self-contained objects that encapsulate functionality. They can easily hide the complexity of a process from…
Familiarize people with the process of retrieving data from SQL Server using an Access pass-thru query. Microsoft Access is a very powerful client/server development tool. One of the ways that you can retrieve data from a SQL Server is by using a pa…

809 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question