Copier un Tableau et coller dans une plage de ligne (Pour une entête) - Exc

Bonjour a tous,

Je voudrais copier un tableau et ensuite le coller dans un plage de cellule de même dimension commençant en A1 qui deviendras l'entête de la feuille.

Voici mon code:

Sub CopieTab()

Const NOM_ENTETE_COLONNE As Variant = "No,Item,Nom,Produit,Ship date"

Const DELIMITATION_ENTETE = ","

Dim varTablEntete As Variant

'Variable objet

Dim wkb As Workbook

Dim wsh As Worksheet

Set wkb = Workbooks.Add

'Ajouter et garder une référence sur la nouvelle Feuille

Set wsh = wkb.Worksheets.Add

'Renommer la Nouvelle Feuille

wsh_.Name = "TestCopieTab"

varTablEntete = Split(NOM_ENTETE_COLONNE, DELIMITATION_ENTETE )

wsh.Range(Rows("A1")).Resize(UBound(varTablEntete, 1), UBound(varTablEntete, 2)) = varTablEntete

End sub

L'erreur suivant a été générer:

"Erreur d’exécution '9': L'indice n'appartient pas à la sélection."

L'erreur viendrais lors du débogage a cette commande:UBound(varTablEntete, 2).

Merci d'avance pour votre aide.

Bonjour,

Essaie ainsi :

Public Sub Create_workbook()
Dim wb As Workbook
    Set wb = Workbooks.Add(xlWBATWorksheet)
    With ActiveWorkbook.ActiveSheet
        .Name = "TestCopieTab"
        .Cells(1).Resize(, 5).Value = Array("No", "Item", "Nom", "Produit", "Ship date")
    End With
End Sub

Bonjour Super merci Jean-Éric.

J'ai essayé le tien cela fonctionne. Du coup, j'ai modifier comme suit afin de créer une procédure a réutiliser.

Sub Create_workbook(ByRef wsh As Worksheet, ByRef Tabl As Variant, ByRef cellDebut As Integer)

    With wsh
        .Cells(cellDebut).Resize(, UBound(Tabl)).Value = Tabl
    End With 
End Sub 
Rechercher des sujets similaires à "copier tableau coller plage ligne entete exc"