Tableau VBA : Retour des données

Bonjour,

Je charge un tableau par les instructions

Dim Tableau_X(1999)

For k = 0 To 1999
    Tableau_X(k) = (k + 1) * 3
Next k

et je voudrais savoir si je peux retourner sur ma feuille les données stockées en une seule fois, donc autrement que par les instructions suivantes :

For k = 0 To 1999
    Cells(k + 2, 3) = Tableau_X(k)
Next k

Cordialement.

bonsoir,

Hum... ça m'étonnerait pas que ça couine un peu !

Une possibilité :

Sub test()
Dim Tableau_X(2000), k%

For k = 0 To 1999
    Tableau_X(k) = (k + 1) * 3
Next k

Range(Cells(2, 3), Cells(2001, 3)) = Application.Transpose(Tableau_X)
End Sub

Bonne année !

A+

Bonjour,

Une proposition entre 2 coupes de champagne.

Cdlt.

Public Sub Yvouille()
Dim Arr(1 To 1999) As Integer
Dim I As Integer
    For I = 1 To UBound(Arr)
        Arr(I) = I * 3
    Next
    Cells(2, 3).Resize(UBound(Arr)).Value = Application.Transpose(Arr)
End Sub

Que nenni !

Ca ne coince pas du tout

Merci infiniment pour ton aide.

Très bonne soirée.


Salut Jean-Eric,

Juste après avoir posté ma réponse à Galopin, je me rends compte que tu m'as également fourni une solution. Solution qui fonctionne tout aussi parfaitement.

Merci à toi aussi


EDIT pour Jean-Eric : Bon, tu devrais peut-être quand même arrêter le champagne, car avec ta solution il manque la toute dernière donnée Galopin en a une place de trop dans son tableau, mais c'est moins grave.

Ben... de 0 à 1999 il faut bien 2000 places !

Après YFOSAVOIR exactement ce que tu veux !

TOUSSA me parait pas très clair : Je "médis" que YAPA que Jean-Eric qui a déjà forcé sur le champagne...

Meilleurs vœux !

Euh, c’était juste une petite plaisanterie en passant

J’ai appris qu’on pouvait déclarer la dimension d’un tableau à une dimension en Base 0 de la manière suivante Tableau(1999) et que ça sous entendait Tableau(0 to 1999), ce qui couvre 2000 valeurs ou alors qu’il fallait – en Base 1 – déclarer ce même tableau de la manière suivante : Tableau(1 to 2000). En Base 1, le ‘’1 to …’’ étant obligatoire.

Je pense donc qu’en corrigeant ma saisie Tableau_X(1999) - qui fonctionnait très bien - en Tableau_X(2000), tu as une ligne de trop, mais ce n’est bien entendu pas si important. La solution que tu m’as apportée étant juste géniale

Cordialement.

bonsoir

vous pouvez essayez ca aussi

Range("B3:K1002") = Tableau_Z

une seule ligne

score2

Ah, quand même

Je vais donc enfin pouvoir boire MA PREMIERE COUPE DE CHAMPAGNE de l'année 2016

Très bonne nouvelle année.

Rechercher des sujets similaires à "tableau vba retour donnees"