Solved

create a common array

Posted on 2002-04-22
4
248 Views
Last Modified: 2010-05-02
Hi,

I have 2 arrays : arr1(5) , arr2(3) . How can I create a third array which contains only the common items in arr1 & arr2
Important: arr2() may becomes one time longer than arr1() , I mean that their long are not fixed
I look forward the code which can do that.

Thanx
0
Comment
Question by:ray14
  • 2
4 Comments
 
LVL 3

Expert Comment

by:jjmartin
ID: 6961397
Are the array's sorted in any particular order?
0
 
LVL 15

Accepted Solution

by:
ameba earned 100 total points
ID: 6961438
' Form1 code
Option Explicit

Private Sub Form_Click()
    Print Join(GetCommon(Split("a b cc dd", " "), Split("cc dd e f", " ")), " ")
End Sub

' returns items which are in a1 and a2
Private Function GetCommon(a1 As Variant, a2 As Variant) As Variant
    Dim col1 As New Collection, colBoth As New Collection, arrBoth() As String
    Dim i As Long, tmp As String
    On Error Resume Next
   
    ' build collection of unique values
    For i = 0 To UBound(a1)
        col1.Add a1(i), "k" & a1(i)
    Next
   
    ' test all values in a2
    For i = 0 To UBound(a2)
        Err.Clear
        tmp = col1.Item("k" & a2(i)) ' if Item does not exist, we'll get error
        If (Err = 0) Then colBoth.Add a2(i), "k" & a2(i) 'Item exists
    Next
   
    ' fill array
    ReDim arrBoth(0 To colBoth.Count - 1)
    For i = 1 To colBoth.Count
        arrBoth(i - 1) = colBoth.Item(i)
    Next
    GetCommon = arrBoth    ' return array
End Function
0
 

Author Comment

by:ray14
ID: 6963434
Hi ameba,

Thanks for your answer and it is  nice to receive your help again. As I promised in my last question I’ll increase the points by +50 then it will be 100  thanks again.

 Ray14
0
 
LVL 15

Expert Comment

by:ameba
ID: 6963463
Thank you  :-)
0

Featured Post

Best Practices: Disaster Recovery Testing

Besides backup, any IT division should have a disaster recovery plan. You will find a few tips below relating to the development of such a plan and to what issues one should pay special attention in the course of backup planning.

Question has a verified solution.

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

Suggested Solutions

Background What I'm presenting in this article is the result of 2 conditions in my work area: We have a SQL Server production environment but no development or test environment; andWe have an MS Access front end using tables in SQL Server but we a…
If you need to start windows update installation remotely or as a scheduled task you will find this very helpful.
As developers, we are not limited to the functions provided by the VBA language. In addition, we can call the functions that are part of the Windows operating system. These functions are part of the Windows API (Application Programming Interface). U…
Show developers how to use a criteria form to limit the data that appears on an Access report. It is a common requirement that users can specify the criteria for a report at runtime. The easiest way to accomplish this is using a criteria form that a…

777 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