Bonjour,
J'ai plusieurs onglets nommées (Stream 1, Stream 2, Stream 3 etc...)
Afin de simplifier l'écriture je fais le code suivant

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
Dim S1 as object 
Dim S2 as Object
Dim S3 as Object
'...
 
Set S1=Sheets("Stream 1")
Set S2=Sheets("Stream 2")
Set S3=Sheets("Stream 3")
'...
Ca fonctionne très bien jusqu'ici, j'utilise régulièrement cette méthode.

Là ou ca bloque c'est que je souhaiterai lancer une copie de données sur chacune des ses sheets et là ca bloque:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Dim X as worksheet
Dim i as Integer
Dim j as Integer
Dim numrow as Integer
Dim T as Object
 
Set T=Sheets("Test")
 
For j=1 to numrow  'numrow vaut 10 par exemple, 10 étant le nombre de stream
     For i = 1 to 100
         Set X ="S" & j
         X.Cells(i,j).Value=T.Cells(i,j).value
     Next i
Next j
La méthode d'appel à la sheet Sj ne fonctionne pas. J'ai essayé d'autre manière mais ca ne fonctionne pas.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
Set X = Worksheets("S" & j) 'ne fonctionne pas
Set X.name= "S" & j 'ne fonctionne pas
En gros je voudrais que X="S"&J renvoie à S1, S2, S3,... en fonction de la valeur du j.