cp4
XLDnaute Barbatruc
Bonjour🙂,
Le code ci-dessous n'est pas de moi. Je l'ai trouvé sur le net. Mais m’intéresse et voudrais m'en inspirer pour l'adapter à mon besoin.
	
	
	
	
	
		
Cependant, ce code plante sur la ligne qui permet de sélectionner la feuille. En effet, le nom des feuilles est en colonne AD récupérer via un dictionnaire et transmis au tableau Tablo. Je suis bloqué merci pour votre aide.
	
		
			
		
		
	
				
			Le code ci-dessous n'est pas de moi. Je l'ai trouvé sur le net. Mais m’intéresse et voudrais m'en inspirer pour l'adapter à mon besoin.
		VB:
	
	
	Option Explicit
Sub Transfert()
    Dim Lg As Long, I As Integer, Cel As Range, MonDico As Object, Tablo(), nb As Integer
    nb = 3
    Application.ScreenUpdating = False
    Set MonDico = CreateObject("Scripting.Dictionary")
    With Sheets("Base")
        Lg = .Range("ad" & Rows.Count).End(xlUp).Row
        For Each Cel In .Range("ad6:ad" & Lg)
            If Cel <> "" Then MonDico(Cel.Value) = Cel.Value
        Next Cel
        Tablo = MonDico.items
        For I = 0 To UBound(Tablo)
            .Range("a5:ad" & Lg).AutoFilter Field:=30, Criteria1:=Tablo(I), VisibleDropDown:=False
            On Error Resume Next
            Sheets(Tablo(I)).Select '***PLANTE ICI
            If Err.Number > 0 Then
                Sheets.Add after:=Sheets(Sheets.Count)
                ActiveSheet.Name = Tablo(I)
            End If
            On Error GoTo 0
            .Range("a5:ad" & Lg).SpecialCells(xlCellTypeVisible).Copy Destination:=Sheets(nb).Range("A3")    'Sheets(Tablo(I)).Range("A3")
            nb = nb + 1
        Next I
        .AutoFilterMode = False
        .Select
    End With
End Sub