Variable Tableau

Le
DesseJ
Bonjour à tous,

J'ai une petite question concernant les tableaux variable.

Est-il possible svp, dans un souci de rapidité d'exécution, de copier
dans une plage les enregistrements d'un tableau par exemple de
l'enregistrement 20000 à 30000, tout ceci sans passer par une boucle ?
Dans le code suivant, je récupère l'intégralité des enregistrements=
.

Merci
Stéphane D.

Option Explicit

Sub MonTEST()
Dim MesDONNEES
MesDONNEES = Range("A1:B40000")
[C1].Resize(UBound(MesDONNEES, 1), UBound(MesDONNEES, 2)) =
MesDONNEES
End Sub
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
michdenis
Le #21570621
Bonjour,

Pour redimensionner un tableau en conservant ses valeurs
il faut utiliser "Redim Preserve MonTableau(). Sauf que dans
ce cas, il n'y a que la dernière dimension du tableau qui est
redimensionnable. En conséquence non applicable dans ton cas.

2 façons de faire :
'---------------------------------
Sub MonTEST()
Dim MesDONNEES(), T()

MesDONNEES = Range("A1:B40000")

'Si tu tiens à utiliser un tableau
T = Range(Range("A1:B40000").Item(20000, 1), _
Range("A1:B40000").Item(40000, 2))
[C1].Resize(UBound(T, 1), UBound(T, 2)) = T

'Tu peux effectuer la copie directement comme ceci :
Range(Range("A1:B40000").Item(20000, 1), _
Range("A1:B40000").Item(40000, 2)).Copy [C1]
End Sub
'---------------------------------



"DesseJ"
Bonjour à tous,

J'ai une petite question concernant les tableaux variable.

Est-il possible svp, dans un souci de rapidité d'exécution, de copier
dans une plage les enregistrements d'un tableau par exemple de
l'enregistrement 20000 à 30000, tout ceci sans passer par une boucle ?
Dans le code suivant, je récupère l'intégralité des enregistrements.

Merci
Stéphane D.

Option Explicit

Sub MonTEST()
Dim MesDONNEES
MesDONNEES = Range("A1:B40000")
[C1].Resize(UBound(MesDONNEES, 1), UBound(MesDONNEES, 2)) MesDONNEES
End Sub
DesseJ
Le #21571061
Merci MichDenis !

Je cherchais une alternative dans le cas où j'ai un tableau en mémoire
qui dépasse les 65536 lignes pour coller le résultat sur plusieurs
feuilles, car tous nos clients ne sont pas en 2007.

Merci encore bonne journée
StephD
Publicité
Poster une réponse
Anonyme