hello !

Je travaille actuellement au traitement d'un document et j'ai besoin de reformatter une série de plages non contigües, avec le même format.
J'utilise un Array pour regrouper mes plages de travail, avec un code qui ressemble à ça :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Workbooks("rato.xls").Activate
 
Dim monarray as variant
Dim dernLigneD  as integer
Dim dernLigneP  as integer
 
dernLigneD = Sheets("Demands").Range("A1").CurrentRegion.Rows.Count
dernLigneP = Sheets("Projects").Range("A1").CurrentRegion.Rows.Count
 
'' Re formatage des zones de dates pour rendre celles au format texte, calculables
 
monarray = Array(ActiveWorkbook.Sheets("Demands").Range(Cells(2, 9), Cells(dernLigneD, 12)), _
            ActiveWorkbook.Sheets("Demands").Range(Cells(2, 24), Cells(dernLigneD, 32)), _
            ActiveWorkbook.Sheets("Projects").Range(Cells(2, 12), Cells(dernLigneP, 24)))
 
... traitement des plages contenues dans l'Array...
Ce monarray pose problème : avec les 2 premières valeurs l'exécution se passe comme un charme, mais avec l'ajout de la 3ème valeur (ActiveWorkbook.Sheets("Projects").Range(Cells(2, 12), Cells(dernLigneP, 24))) elle plante avec une erreur 1004.

Où est le problème ?? Un tableau ne peut-il contenir que des références au sein d'une même feuille ? Le classeur reste le même cependant.

Merci de votre aide à ma compréhension.