Excel macro extraire onglet avec mise en page

Résolu
Utilisateur anonyme -  
 Utilisateur anonyme -
Bonjour,

J'ai récupéré une macro qui fonctionne très bien pour scinder un onglet en X fichiers en fonction d'un critère (la colonne A sur ce fichier).
http://www.cijoint.fr/cjlink.php?file=cj201008/cijtHs07NY.xls
Il y a juste un truc pas trop gênant : je dois trier le fichier manuellement sur la colonne A avant de lancer la macro, sinon elle n'extrait pas toutes les lignes.

Ce que je voudrais demander ici, c'est s'il est possible de copier également la mise en page qui est à refaire sur chaque fichier extrait. Pouvez-vous me dire ce qu'il faut inclure dans la macro ?
Merci d'avance pour votre aide.
--
Argitxu

2 réponses

  1. gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   4 744
     
    RE bonsoir,

    Je te proposes de changer cette partie de la macro pour avoir ta mise en page :

            'copier les valeurs de "DF traitée"
            .Rows(ligneDebutCopie & ":" & ligneFinCopie).Copy
            newWbk.Sheets(1).Range("A2").Activate
            Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
                False, Transpose:=False
            Selection.PasteSpecial Paste:=xlPasteColumnWidths, Operation:=xlNone, _
                SkipBlanks:=False, Transpose:=False
            newWbk.Sheets(1).Range("A1").Select
            
            'sauver le nouveau classeur
    


    Il me semble que cela devrait être plus correct : à toi de voir.

    Sur ton fichier cela donne :

    global	1319 lignes
    F1	428 lignes
    F2	29 lignes
    F3	174 lignes
    F4	455 lignes
    F5	18 lignes
    F6	59 lignes
    F7	162 lignes
    total	1325 lignes
    - 6 titres	1319 lignes
    

    Donc c'est parfaitement normal pour moi.
    0
    1. Utilisateur anonyme
       
      Oui, tout est bon sur l'extraction et la recopie plus conforme à l'original.
      Merci beaucoup pour ton aide.

      Bonne nuit.
      0
  2. gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   4 744
     
    bonjour

    je dois trier le fichier manuellement sur la colonne A avant de lancer la macro, sinon elle n'extrait pas toutes les lignes.

    J'ai totalement détrié ton classeur, lancé la macro et rien n'a été perdu car les 7 fichiers étaient complets : la macro fait automatiquement le tri sur la colonne A.

    ??

    s'il est possible de copier également la mise en page

    Je suppose que tu parles de la largeur des colonnes ?

    Si tu veux utiliser la largeur automatique tu peux la rajouter dans la macro, sinon il faut récupérer la largeur du classeur de base : que préféres-tu ?
    -1
    1. Utilisateur anonyme
       
      Bonsoir Gbinforme,

      Merci de répondre
      J'ai bien vu que la macro prévoit le tri, mais en faisant les tests sur mon fichier d'origine, je n'avais pas tout. Je recommencerai.

      Pour la mise en page, je préfère la largeur du classeur de base.
      En fait je pensais (ou rêvais ?) à la même chose que le déplacer/Copier qu'on fait sur un onglet. Mais tu me diras ce qu'il est raisonnable de rêver.
      0