Comment faire reference à un tableau et écrire dans un autre tableau avec plus d'une colonne par itération

Je suis curieux de pouvoir copyr plusieurs colonnes vers un nouveau tableau à partir d'un tableau existant en une seule itération d'une boucle. Supposons que nous avons l'exemple général suivant:

Array1 contient 10 000 éléments dans la colonne 1, 10 000 éléments dans la colonne 2 et 10 000 éléments dans la colonne 3, etc.

Disons que je souhaite qu'un nouveau réseau génère ces informations, je souhaite seulement que les colonnes 1 et 2 soient peuplées. Est-ce que je peux faire cela en faisant une boucle une seule fois avec un tableau cible correctement dimensionné? Par exemple:

'Assume TargetArray has already been ReDimmed to the size of Array1 in the code prior For i=0 to UBound(Array1) TargetArray(x,1)= Array1(x,1) TargetArray(x,2)=Array1(x,2) Next 

Donc, cela peut-il se faire en une seule étape, ou dois-je faire une boucle pour chaque dimension que je veux append au tableau. Existe-t-il des économies de vitesse en effectuant deux opérations par boucle comme indiqué ci-dessus (en supposant qu'il fonctionne).

Merci pour toute votre aide!

Avez-vous essayé simplement d'utiliser des objects Range? Je viens de créer 100 valeurs dans les colonnes A et B, et les copyr sur F et G. Ou essayez-vous de twigr des valeurs des trois premières colonnes dans une équation pour vous donner des valeurs pour les deux nouvelles colonnes?

 Sub CopyRange() Dim Array1 As Range Dim Array2 As Range Set Array1 = Range("A1:B100") Set Array2 = Range("F1:G100") Array2.Value = Array1.Value End Sub 

Votre exemple devrait fonctionner comme ce que RubberDuck a commenté.
Il est similaire dans l'exemple ci-dessous qui fonctionne à ma fin.
Je ne peux pas l'adapter aux commentaires, donc je n'ai pas le choix de le publier comme réponse.

 Dim TargetArray ' declared as Variant type, not array of variants ReDim TargetArray(0 To Ubound(Array1, 0), 0 To 1) ' for 2 columns For i = 0 To Ubound(Array1, 1) TargetArray(i, 0) = Array1(i, 0) TargetArray(i, 1) = Array1(i, 1) Next 

Est-ce proche de ce que vous avez? Si oui, alors cela devrait fonctionner.