Excel 2003 Macro pour diviser un classeur en plusieurs

kenavo

XLDnaute Junior
Bonjour,

J' ai de nouveau besoin d' aide
J' ai une erreur dans une macro permettant de diviser une feuille en plusieurs classeur suivant un filtre
J' ai une erreur mais je ne trouve pas laquelle : l' indice n' appartient pas a la sélection

Si ce n'est pas trop abusé j' aimerais aussi faire en sorte qu'on ait pas à copier le données dans l' onglet Données mais qu'il ouvre un autre fichier et copie la feuille de donnée du fichier d' origine

la macro :
Code:
'Divise feuille en plusieurs classeur suivant le filtre

Sub Decouper()
Dim Rg As Range
Dim Wk As Workbook, Rg1 As Range
Dim Sh As Worksheet, Chemin As String
Dim nom As String

Worksheets("Donnees").Select
Set Sh = ActiveSheet
With Sh
    Set Rg = .Range("A1:N" & .Range("A65536").End(xlUp).Row)
End With
Do
    With Rg
        Workbooks("110").Activate
        Worksheets("Donnees").Select
        'Trier par ordre croissant
        .Sort Key1:=Rg(1, 2), Header:=xlYes
        'Filtre automatique
        .AutoFilter Field:=2, Criteria1:=Rg(1, 2)
        Workbooks("110").Activate
        Worksheets("Donnees").Select
        Set Rg1 = Sh.Range("_FilterDataBase")
            .SpecialCells (xlCellTypeVisible)
        Cells.Select
        Selection.Copy
        Set Wk = Workbooks.Add(-4167)
        ActiveSheet.Paste
        'Definition du nom des fichiers créés
        nom = " - Code.xls"
        'Ajoute le code agence en début du nom du fichier
        A = Rg(1, 2).Value
        ActiveWorkbook.SaveAs Filename:=A & nom
        ActiveWorkbook.Close
        Application.DisplayAlerts = False
        Rg1.Offset(1).Delete

        Workbooks("110").Activate
        Worksheets("Donnees").Select
        
    End With
    
Loop Until Rg(1, 2) = ""
Application.EnableEvents = True
Application.DisplayAlerts = False
Application.DisplayAlerts = True
Set Wk = Nothing: Set Sh = Nothing
    
        
End Sub

Merci d' avance
 

Pièces jointes

  • 110.zip
    17 KB · Affichages: 161
  • 110.zip
    17 KB · Affichages: 172
  • 110.zip
    17 KB · Affichages: 185
Dernière édition:

pierrejean

XLDnaute Barbatruc
Re : Excel 2003 Macro pour diviser un classeur en plusieurs

Re

Sans certitude !!
Ne serait-ce pas parceque le fichier 110 est lui même dans 'Mes Documents'
A moins qu'il ne s'agisse de l'option par defaut de ton Excel
Pour les mettre ailleurs il convient de donner l'integralité du chemin lors de la Sauvegarde type "C:/c'estici/que/je/veux/lemettre/lui.xls"
 

kenavo

XLDnaute Junior
Re : Excel 2003 Macro pour diviser un classeur en plusieurs

Non en fait si je place 110.xls sur le bureau il me met les fichiers sur le bureau,
ensuite si je le copie ds mes Documents, il le remets les fichiers sur le bureau, je supprime tout, relance et là ok il les mets ds mes Documents
Pas bien grave ensuite il sera mis a un endroits bien précis

Merci beaucoup
 

Discussions similaires

Statistiques des forums

Discussions
312 201
Messages
2 086 171
Membres
103 152
dernier inscrit
Karibu