XL 2010 Transfert d'un Tab dans un autre

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

néné06

XLDnaute Accro
Bonjour le salon,
Après une longue absence, je repasse par le forum car un ami a demandé mon aide, pour un petit programme.
n'ayant plus pratiqué depuis longtemps, des lacunes apparaissent!
Je bloque sur un problème tous bête.
J'ai, dans mon programme, deux tableaux 2D.
Je rempli le premier et c'est OK - Dim Tablo_Temp(25, 18)
Je souhaite charger le deuxième tableau avec les données du premier - Dim Tablo_Somme(25, 18)
J'écrit donc !Tablo_Somme = Tablo_Temp
Et ça ne fonctionne pas
J'ai regardé les explications de JB mais je ne trouve pas la solution ou l'erreur de syntax?

Voici une partie du programme:

Option Base 1

Dim Tablo_Temp(25, 18)

Dim Tablo_Somme(25, 18)

Public Sub Ecriture_des_données_sur_Reporting()

[C9].Resize(UBound(Tablo_Temp, 1)) = Application.Index(Tablo_Temp, , 1)

[D9].Resize(UBound(Tablo_Temp, 1)) = Application.Index(Tablo_Temp, , 2)

[E9].Resize(UBound(Tablo_Temp, 1)) = Application.Index(Tablo_Temp, , 3)

[F9].Resize(UBound(Tablo_Temp, 1)) = Application.Index(Tablo_Temp, , 4)

[G9].Resize(UBound(Tablo_Temp, 1)) = Application.Index(Tablo_Temp, , 5)

[H9].Resize(UBound(Tablo_Temp, 1)) = Application.Index(Tablo_Temp, , 6)

[I9].Resize(UBound(Tablo_Temp, 1)) = Application.Index(Tablo_Temp, , 7)

[J9].Resize(UBound(Tablo_Temp, 1)) = Application.Index(Tablo_Temp, , 8)

[N9].Resize(UBound(Tablo_Temp, 1)) = Application.Index(Tablo_Temp, , 9)

[O9].Resize(UBound(Tablo_Temp, 1)) = Application.Index(Tablo_Temp, , 10)

[P9].Resize(UBound(Tablo_Temp, 1)) = Application.Index(Tablo_Temp, , 11)

[S9].Resize(UBound(Tablo_Temp, 1)) = Application.Index(Tablo_Temp, , 12)

[Y9].Resize(UBound(Tablo_Temp, 1)) = Application.Index(Tablo_Temp, , 13)

[K9].Resize(UBound(Tablo_Temp, 1)) = Application.Index(Tablo_Temp, , 14)

[L9].Resize(UBound(Tablo_Temp, 1)) = Application.Index(Tablo_Temp, , 15)

[Q9].Resize(UBound(Tablo_Temp, 1)) = Application.Index(Tablo_Temp, , 16)

[T9].Resize(UBound(Tablo_Temp, 1)) = Application.Index(Tablo_Temp, , 17)

[Z9].Resize(UBound(Tablo_Temp, 1)) = Application.Index(Tablo_Temp, , 18)



Tablo_Somme = Tablo_Temp

End Sub

D'avance, merci pour votre aide!

A+
 
Bonjour,

En fait, c'est tout bête, il ne faut pas initialiser tes tableaux dans la déclaration mais avec un Redim :
Code:
Sub Tableau()
   
    Dim Tablo_Temp()
    Dim Tablo_Somme()
   
    ReDim Tablo_Temp(1 To 25, 1 To 18)
           
    'ici ton code de remplissage de Tablo_Temp...
    '...
    '...
   
    ReDim Tablo_Somme(1 To UBound(Tablo_Temp, 1), 1 To UBound(Tablo_Temp, 2))
   
    Tablo_Somme = Tablo_Temp
    'ici, suite du code...
    '...
    '...
   
End Sub
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Retour