Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

copier des selections dans un tableau de 2 dimension...vba

4 réponses
Avatar
Alfred WALLACE
Bonjour,
je me perd dans l'enchainement des choses si vous pouviez m'aider..

J'ai une base de 60 colonnes

j'aimerai cr=E9er une variable "tab_stockage" tableau (dim) de 2
dimensions (ligne colonne) avec
le nombre de ligne non determin=E9 =E0 la cr=E9ation, et de 5 colonnes.

j'aimerai, ensuite selectionner l'entieret=E9 de 5 colonnes parmis les
60 et de
les "coller" dans une des 5 colonnes de mon tableau.

exemple :
tab_stockage(1) =3D Columns(1).Select
tab_stockage(2) =3D Columns(2).Select
tab_stockage(3) =3D Columns(18).Select
tab_stockage(4) =3D Columns(10).Select
tab_stockage(5) =3D Columns(8).Select

Puis, ensuite, je souhaite COLLER tab_stockage() dans une feuille en
A1

Pourriez vous m'aider ?

Merci
Jos=E9

4 réponses

Avatar
Alfred WALLACE
REMARQUE : en fait, je n'ai besoin que t'un tableau (dim) qu'à UNE
SEULE dimension
et pas 2 comme je l'ai écris dans le message initial (ci-dessous)

Pardon de m'etre embrouiller les pédales
José

On 12 mar, 11:49, "Alfred WALLACE" wrote:
Bonjour,
je me perd dans l'enchainement des choses si vous pouviez m'aider..

J'ai une base de 60 colonnes

j'aimerai créer une variable "tab_stockage" tableau (dim) de 2
dimensions (ligne colonne) avec
le nombre de ligne non determiné à la création, et de 5 colonnes.

j'aimerai, ensuite selectionner l'entiereté de 5 colonnes parmis les
60 et de
les "coller" dans une des 5 colonnes de mon tableau.

exemple :
tab_stockage(1) = Columns(1).Select
tab_stockage(2) = Columns(2).Select
tab_stockage(3) = Columns(18).Select
tab_stockage(4) = Columns(10).Select
tab_stockage(5) = Columns(8).Select

Puis, ensuite, je souhaite COLLER tab_stockage() dans une feuille en
A1

Pourriez vous m'aider ?

Merci
José


Avatar
JB
Bonsoir,

Sub transfertTableurTableau()
Dim a(1 To 3, 1 To 3)
a(1, 1) = 11
a(2, 1) = 12
a(3, 1) = 13

a(1, 2) = 21
a(2, 2) = 22
a(3, 2) = 23

a(1, 3) = 31
a(2, 3) = 32
a(3, 3) = 33

[A1:C3] = a ' a() dans tableur
b = [A1:C3] ' tableur dans tableau b()
c = b ' tableau b() dans c()

[A1:A3] = Application.Index(a, , 1) 'transfert colonne 1 du
tableau a() dans le tableur
[A1:C1] = Application.Index(a, 1) 'transfert ligne 1 du tableau
a() dans le tableur
[A11:A13] = Application.Index(a, , 2) 'transfert colonne 2 du
tableau a() dans le tableur
End Sub

JB


On 12 mar, 11:52, "Alfred WALLACE" wrote:
REMARQUE : en fait, je n'ai besoin que t'un tableau (dim) qu'à UNE
SEULE dimension
et pas 2 comme je l'ai écris dans le message initial (ci-dessous)

Pardon de m'etre embrouiller les pédales
José

On 12 mar, 11:49, "Alfred WALLACE" wrote:



Bonjour,
je me perd dans l'enchainement des choses si vous pouviez m'aider..

J'ai une base de 60 colonnes

j'aimerai créer une variable "tab_stockage" tableau (dim) de 2
dimensions (ligne colonne) avec
le nombre de ligne non determiné à la création, et de 5 colonnes.

j'aimerai, ensuite selectionner l'entiereté de 5 colonnes parmis les
60 et de
les "coller" dans une des 5 colonnes de mon tableau.

exemple :
tab_stockage(1) = Columns(1).Select
tab_stockage(2) = Columns(2).Select
tab_stockage(3) = Columns(18).Select
tab_stockage(4) = Columns(10).Select
tab_stockage(5) = Columns(8).Select

Puis, ensuite, je souhaite COLLER tab_stockage() dans une feuille en
A1

Pourriez vous m'aider ?

Merci
José- Masquer le texte des messages précédents -


- Afficher le texte des messages précédents -



Avatar
JB
S'il s'agit de tranférer des colonnes dans un champ, il n'y a pas
besoin de tableau:

Range("A1:A10000,C1:C10000,E1:E10000").Copy Sheets(2).[A1]
Union([A1:A10000], [C1:C10000], [E1:E10000]).Copy Sheets(3).[A1]

JB

On 12 mar, 11:52, "Alfred WALLACE" wrote:
REMARQUE : en fait, je n'ai besoin que t'un tableau (dim) qu'à UNE
SEULE dimension
et pas 2 comme je l'ai écris dans le message initial (ci-dessous)

Pardon de m'etre embrouiller les pédales
José

On 12 mar, 11:49, "Alfred WALLACE" wrote:



Bonjour,
je me perd dans l'enchainement des choses si vous pouviez m'aider..

J'ai une base de 60 colonnes

j'aimerai créer une variable "tab_stockage" tableau (dim) de 2
dimensions (ligne colonne) avec
le nombre de ligne non determiné à la création, et de 5 colonnes.

j'aimerai, ensuite selectionner l'entiereté de 5 colonnes parmis les
60 et de
les "coller" dans une des 5 colonnes de mon tableau.

exemple :
tab_stockage(1) = Columns(1).Select
tab_stockage(2) = Columns(2).Select
tab_stockage(3) = Columns(18).Select
tab_stockage(4) = Columns(10).Select
tab_stockage(5) = Columns(8).Select

Puis, ensuite, je souhaite COLLER tab_stockage() dans une feuille en
A1

Pourriez vous m'aider ?

Merci
José- Masquer le texte des messages précédents -


- Afficher le texte des messages précédents -



Avatar
Alfred WALLACE
Merci JB,
initialement, j'utilisais une boucle pour faire une "union"
de (par exemple) colonne 1, puis colonne 7 , puis colonne 4
et enfin, je copiais l'union.
mon était que union ne garde pas l'ordre des colonnes unies, mais
concerve
l'odre "normal" des colonnes (a,b,c....)
ma sone copiée aurait du être
col1, col7, col4 mais elle était col1,col4, col7.

je crois que ta solution avec le range devait faire l'affaire (je vais
tester)

Merci

José

On 12 mar, 21:58, "JB" wrote:
S'il s'agit de tranférer des colonnes dans un champ, il n'y a pas
besoin de tableau:

Range("A1:A10000,C1:C10000,E1:E10000").Copy Sheets(2).[A1]
Union([A1:A10000], [C1:C10000], [E1:E10000]).Copy Sheets(3).[A1]

JB