La fonction Resize

Bonjour,

j’essaie de comprendre ce que signifie cette ligne [F10].Resize(, UBound(table2, 1)) = table2 dans le petit code suivant :

Sub test()
    Dim Tableau(), table2()
    Dim I As Long
    With Worksheets("Feuil1")

        table_CC = Range("A7:B12").Value    ' 2 dimensions 10x1
        table2 = Application.Transpose(table_CC)    ' 1 dimension 10
       [F10].Resize(, UBound(table2, 1)) = table2
        For I = 1 To UBound(table2, 1)
            For j = 1 To UBound(table2, 2)
                Cells(I, 5 + j) = table2(I, j)
            Next j
        Next I

End With
End Sub

pour moi, le Resize(, UBound(table2, 1)) nous permet de connaitre le nombre de ligne du tableau "table2" d'où le = table2

pouvez vous m'indiquer si c'est bien cela?

maintenant ce que je ne comprends pas c'est que le Resize à la propriété suivante Resize (nombre de ligne, nombre de colonne) alors que UBound(table2, 1) représente le nombre de ligne car nous somme à la première dimension, pour moi on aurait du l'écrire comme cela Resize(UBound(table2, 1), ) et non pas Resize(, UBound(table2, 1))...

De plus on lui précise que c'est à la cellule [F10] qu'on veut connaitre le nombre de ligne du tableau "table2" mais lorsqu'on exécute la macro il nous écrit "1" à la cellule F10 et "2" à la cellule G10

merci beaucoup

Bonjour

table_CC est en ligne.

table2 est la transposition de table_CC, donc en colonne.

F10 est la celulle de départ. De 1 par 1.

Le Resize redimensionne la sélection de 1 par ubound(table2,1).

Puis applique table2

C'aurait pu s'écrire

[F10].Resize(, UBound(table_CC, 2)) = application.Transpose(table_CC)

Merci

Rechercher des sujets similaires à "fonction resize"