Scinder une feuille en plusieurs en VBA

Bonjour le forum,

Je vous explique mon problème :

Dans le fichier que j'ai mis ci-joint, je voudrais, dans la feuille "Etape 2" séparer les données par compteur et mettre les données de chaque compteur dans une nouvelle feuille ( et ainsi avoir une feuille par compteur).

Je voudrais que cette macro fonctionne quelque soit le nombre de compteurs présents dans la feuille "Etape 2" et quelque soit leur nom.

De plus je voudrais que chaque nouvelle feuille créée par compteur, porte le nom de ce compteur.

Pouvez vous m'indiquer comment coder ça en VBA

Merci beaucoup d'avance

Léo

Bonjour à tous, pour ceux qui ont rencontré le même problème que moi, Klin89 m 'a gentillement donné la solution : je la met ci-dessous :

Option Explicit
Sub test()
Dim a, e, dico As Object, wsName As String
    Application.ScreenUpdating = False
    Set dico = CreateObject("Scripting.Dictionary")
    With Sheets("Feuil1")
        With .Range("a1").CurrentRegion
            a = .Columns(1).Offset(1).Resize(.Rows.Count - 1).Value
            For Each e In a
                If Not dico.exists(e) Then
                    dico(e) = Empty
                    wsName = e
                    If Not Evaluate("isref('" & wsName & "'!a1)") Then
                        Sheets.Add(after:=Sheets(Sheets.Count)).Name = wsName
                    End If
                    Sheets(wsName).Cells.Delete
                    .AutoFilter 1, e
                    .SpecialCells(xlCellTypeVisible).Copy Sheets(wsName).Cells(1)
                    .AutoFilter
                End If
            Next
        End With
    End With
    Set dico = Nothing
    Application.ScreenUpdating = True
End Sub

A+

Bonjour

Un essai à tester. Te convient-il ?

Bye !

Rechercher des sujets similaires à "scinder feuille vba"