Sub test()
Dim Donner As Worksheet
Set Donner = Worksheets("Donner")
' Créer un variable range
Dim Temp As Range
Set Temp = Donner.Range(Donner.Cells(8, 3), Donner.Cells(12, 7))
' Donnée a recupérer des tableaux saisies
Dim Tab1() As Variant
Tab1 = Donner.Range(Donner.Cells(10, 12), Donner.Cells(14, 14))
Dim Tab2() As Variant
Tab2 = Donner.Range(Donner.Cells(20, 11), Donner.Cells(24, 11))
Dim Tab3() As Variant
Tab3 = Donner.Range(Donner.Cells(7, 18), Donner.Cells(11, 18))
' Remplir la variable Range avec les différente Positions pour les assemblages
Temp(1, 2).Resize(UBound(Tab1, 1), UBound(Tab1, 2)) = Tab1
Temp(1, 1).Resize(UBound(Tab2, 1), UBound(Tab2, 2)) = Tab2
Temp(1, 5).Resize(UBound(Tab3, 1), UBound(Tab3, 2)) = Tab3
' Créer un tableau un tableau
Dim TabAremplir() As Variant
TabAremplir = Temp
' Decharge la variable "Range" Temp (Libére la mémoire)
Set Temp = Nothing
' Coller se Tableaux (Crée d'union de plusieurs tableaux) dans la FeuilVide
' Dans la feuille Vide le tableau sera recopier en une fois
' Coller les valeurs de ce tableau reconstituer a partir de plusieur
' tableau (Variable tableau) comme ci-cela était des Unions
' en une seule fois
Dim FeuilVide As Worksheet
Set FeuilVide = Worksheets("FeuilVide")
FeuilVide.Cells(8, 3).Resize(UBound(TabAremplir, 1), UBound(TabAremplir, 2)) = TabAremplir
End Sub