I've had a little look and I've found similar questions but they all seem to be how to add one list to the end of another.
I've recently answered a question with a technique I use at work in Excel that relies on creating a 3rd column with a formula floodfill to concat col1 & col2 for each row. I figured there must be a better way to do this so had a little play in VBA and came up with the following from questions I could find. But now I have a couple of questions:
Is there a way to get rid of setting the 3rd array with x amount of arbitrary values which will just be replaced anyway? ReDim something maybe
Is there overall a better/neater way to combine elements from arr1 and arr2 based on their position without cycling through each one? (using in-built array commands or whatever)
(Apologies if this duplicates any thread somewhere, I did look, honest!)
Private Sub CommandButton1_Click()
Dim arr1() As Variant
Dim arr2() As Variant
Dim arr3() As Variant
Dim element As Variant
Dim pos As Integer
arr1 = Array("ONE", "TWO", "THREE")
arr2 = Array("1111", "2222", "3333")
arr3 = Array("x", "x", "x")
For Each element In arr1
pos = Application.WorksheetFunction.Match(element, arr1, False) - 1
arr3(pos) = arr1(pos) & arr2(pos)
'MsgBox (arr1(pos) & arr2(pos) & arr3(pos))
Next
'Where arr3 will equal ("ONE1111", "TWO2222", "THREE3333")
End Sub
EDIT - Thanks all for the answers, giving me about 20 things to think about and play with over the next few days.

for x = 1 to 10000 next xloop in Excel?