Sub Macro1()
Sheets("export").Range("A1").Select 'sélectionne la cellule A1 de l'onglet "export"
Call CopieTab 'lance la procédure CopieTab
Sheets("export").Activate 'sélectionne l'onglet export
ActiveCell.End(xlDown).Select 'sélectionne la dernière cellule éditée en descendant
ActiveCell.End(xlDown).Select 'sélectionne la première cellule éditée en descendant
Call CopieTab 'lance la procédure CopieTab
Sheets("export").Activate 'sélectionne l'onglet export
ActiveCell.End(xlDown).Select 'sélectionne la dernière cellule éditée en descendant
ActiveCell.End(xlDown).Select 'sélectionne la première cellule éditée en descendant
Call CopieTab 'lance la procédure CopieTab
End Sub
Sub CopieTab()
Dim pl As Range 'déclare la variable pl (PLage)
Dim no As String 'déclare la variable no (Nom de l'Onglet)
Dim o As Object 'déclare la variable o (Onglet)
Set pl = ActiveCell.CurrentRegion 'définit la plage pl
Set pl = pl.Resize(pl.Rows.Count, pl.Columns.Count + 1) 'rajoute la colonne N à la plage
no = pl.Cells(1, 1).Value 'définit le nom de l'onglet (première cellule de la plage)
Sheets.Add after:=Sheets(Sheets.Count) 'ajoute un nouvel onglet en dernière position
ActiveSheet.Name = no 'définit le nom du nouvel onglet
Set o = ActiveSheet 'définit l'onglet o
pl.Copy 'copie la plage pl
o.Range("A1").PasteSpecial (xlPasteColumnWidths) 'colle la largeur des colonnes
pl.Copy o.Range("A1") 'copie la plage pl et la colle dans A1 du nouvel onglet
o.Range("A1").Select 'sélectionne A1 du nouvel onglet
End Sub