[excel] probleme

Résolu
Bonjour,
voila j'ai un problème j'ai créer une macro automatique qui :
-me créer une feuille
-la renomme
-lui copie le format d'une autre feuille
-lui copie un titre sur une colonne
-et enfin fait un filtre élaboré

mais voila il ne respecte as du tout la mise en forme de la page d'où provient les donnée qui vont être amené par le filtre or quand je le fait en manuel ça marche aidez moi s'il vous plait c'est urgent

cordialement shuya
Configuration: Windows XP
Firefox 2.0.0.13

6 réponses

  1. Contributeur
    bonjour

    C'est très bien ce que tu nous racontes :

    - j'ai créé une macro qui fonctionne bien.
    - les formats obtenus ne me satisfont pas.
    - en reproduisant manuellement le graphisme est correct.

    C'est sans doute que dans ta macro tu as oublié la récupération du format, mais comment veux-tu que l'on te dise où avec aussi peu d'éléments ?
    1. Contributeur
      bonjour

      Personnellement, je n'attends rien car c'est toi qui pose la question et avec ce que tu as dis j'ai essayer de te donner la seule piste que j'entrevoyais.
      Je n'ai pas de don d'extralucide pour te dire quel est le paramètre manquant dans ta macro.
      1. voila le code de la macro :

        Sub filtre()
        '
        ' filtre Macro
        ' Macro enregistrée le 03/06/2008 par Portable 53
        '

        ' creation d'une nouvelle feuille
        Sheets.Add
        ' changer le nom de la nouvelle feuille
        ActiveSheet.Name = "Final"
        'ActiveWorkbook.Worksheets.Add.Name = "Récap"

        Range("C32").Select
        ' selection de toute la page QCM
        Sheets("QCM").Select
        Cells.Select
        Selection.Copy
        Sheets("final").Select
        Cells.Select
        'collage du format de la page QCM
        Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
        SkipBlanks:=False, Transpose:=False
        Range("D8").Select
        Sheets("QCM").Select
        Range("D1").Select
        Application.CutCopyMode = False
        Selection.Copy
        Sheets("final").Select
        Range("D1").Select
        ActiveSheet.Paste
        Application.CutCopyMode = False
        Range("F8").Select
        ActiveSheet.CheckBoxes.Add(234, 40.5, 24, 17.25).Select
        ActiveSheet.CheckBoxes.Add(234, 59.25, 24, 17.25).Select
        ActiveSheet.CheckBoxes.Add(234, 78, 24, 17.25).Select
        ActiveSheet.CheckBoxes.Add(232.5, 197.25, 24, 17.25).Select
        ActiveSheet.CheckBoxes.Add(232.5, 235.5, 24, 17.25).Select
        ActiveSheet.CheckBoxes.Add(232.5, 351, 24, 17.25).Select
        ActiveSheet.CheckBoxes.Add(232.5, 371.25, 24, 17.25).Select
        ActiveSheet.CheckBoxes.Add(231, 489, 24, 17.25).Select
        ActiveSheet.CheckBoxes.Add(231, 509.25, 24, 17.25).Select
        ActiveSheet.CheckBoxes.Add(230.25, 606.75, 24.75, 17.25).Select
        ActiveSheet.CheckBoxes.Add(230.25, 606.75, 24, 17.25).Select
        ActiveSheet.CheckBoxes.Add(230.25, 624, 24.75, 17.25).Select
        ActiveSheet.CheckBoxes.Add(230.25, 624.75, 24, 17.25).Select
        ActiveSheet.CheckBoxes.Add(230.25, 643.5, 24.75, 17.25).Select
        ActiveSheet.CheckBoxes.Add(230.25, 643.5, 24, 17.25).Select
        ActiveSheet.CheckBoxes.Add(231, 741.75, 24, 17.25).Select
        ActiveSheet.CheckBoxes.Add(231, 761.25, 24, 17.25).Select
        ActiveSheet.CheckBoxes.Add(231, 781.5, 24, 17.25).Select
        ActiveSheet.CheckBoxes.Add(231, 897, 24, 17.25).Select
        ActiveSheet.CheckBoxes.Add(231, 918, 24, 17.25).Select
        ActiveSheet.CheckBoxes.Add(231.75, 1034.25, 24, 17.25).Select
        ActiveSheet.CheckBoxes.Add(231.75, 1053, 24, 17.25).Select
        ActiveSheet.CheckBoxes.Add(231.75, 1073.25, 24, 17.25).Select
        ActiveSheet.CheckBoxes.Add(231.75, 1189.5, 24, 17.25).Select
        ActiveSheet.CheckBoxes.Add(231.75, 1209, 24, 17.25).Select
        ActiveSheet.CheckBoxes.Add(231.75, 1228.5, 24, 17.25).Select
        ActiveSheet.CheckBoxes.Add(231.75, 1345.5, 24, 17.25).Select
        ActiveSheet.CheckBoxes.Add(231.75, 1365.75, 24, 17.25).Select
        ActiveSheet.CheckBoxes.Add(231.75, 1385.25, 24, 17.25).Select
        ActiveSheet.CheckBoxes.Add(231.75, 1503.75, 27.75, 17.25).Select
        ActiveSheet.CheckBoxes.Add(231.75, 1521.75, 27.75, 17.25).Select
        ActiveSheet.CheckBoxes.Add(231.75, 1541.25, 27.75, 17.25).Select
        ActiveSheet.CheckBoxes.Add(231, 1638.75, 24, 17.25).Select
        ActiveSheet.CheckBoxes.Add(231, 1659, 24, 17.25).Select
        ActiveSheet.CheckBoxes.Add(231, 1677.75, 24, 17.25).Select
        ActiveSheet.CheckBoxes.Add(231, 1794.75, 24, 17.25).Select
        ActiveSheet.CheckBoxes.Add(231, 1814.25, 24, 17.25).Select
        ActiveSheet.CheckBoxes.Add(231, 1834.5, 24, 17.25).Select
        ActiveSheet.CheckBoxes.Add(231, 1950.75, 24, 17.25).Select
        ActiveSheet.CheckBoxes.Add(231, 1971, 24, 17.25).Select
        ActiveSheet.CheckBoxes.Add(231, 1989.75, 24, 17.25).Select
        ActiveSheet.CheckBoxes.Add(231, 2087.25, 24, 17.25).Select
        ActiveSheet.CheckBoxes.Add(231, 2107.5, 24, 17.25).Select
        ActiveSheet.CheckBoxes.Add(230.25, 2223, 24, 17.25).Select
        ActiveSheet.CheckBoxes.Add(230.25, 2242.5, 24, 17.25).Select
        ActiveSheet.CheckBoxes.Add(230.25, 2262, 24, 17.25).Select
        ActiveSheet.CheckBoxes.Add(230.25, 2379, 24, 17.25).Select
        ActiveSheet.CheckBoxes.Add(230.25, 2398.5, 24, 17.25).Select
        ActiveSheet.CheckBoxes.Add(230.25, 2418, 24, 17.25).Select
        ActiveSheet.CheckBoxes.Add(230.25, 2515.5, 24, 17.25).Select
        ActiveSheet.CheckBoxes.Add(230.25, 2535, 24, 17.25).Select
        ActiveSheet.CheckBoxes.Add(230.25, 2554.5, 24, 17.25).Select
        Sheets("QCM").Columns("A:D").AdvancedFilter Action:=xlFilterCopy, _
        CriteriaRange:=Sheets("critere").Range("F12:F13"), CopyToRange:=Range("D1") _
        , Unique:=False
        End Sub
        1. en faite le probleme venait que lors de la creation de la macro il m'as ajouter des lignes qui genait la macro en elle meme et qui ne faisait que ajouter des checkboxes ces ligne sont :

          ActiveSheet.CheckBoxes.Add(234, 40.5, 24, 17.25).Select
          ActiveSheet.CheckBoxes.Add(234, 59.25, 24, 17.25).Select
          ActiveSheet.CheckBoxes.Add(234, 78, 24, 17.25).Select
          ActiveSheet.CheckBoxes.Add(232.5, 197.25, 24, 17.25).Select
          ActiveSheet.CheckBoxes.Add(232.5, 235.5, 24, 17.25).Select
          ActiveSheet.CheckBoxes.Add(232.5, 351, 24, 17.25).Select
          ActiveSheet.CheckBoxes.Add(232.5, 371.25, 24, 17.25).Select
          ActiveSheet.CheckBoxes.Add(231, 489, 24, 17.25).Select
          ActiveSheet.CheckBoxes.Add(231, 509.25, 24, 17.25).Select
          ActiveSheet.CheckBoxes.Add(230.25, 606.75, 24.75, 17.25).Select
          ActiveSheet.CheckBoxes.Add(230.25, 606.75, 24, 17.25).Select
          ActiveSheet.CheckBoxes.Add(230.25, 624, 24.75, 17.25).Select
          ActiveSheet.CheckBoxes.Add(230.25, 624.75, 24, 17.25).Select
          ActiveSheet.CheckBoxes.Add(230.25, 643.5, 24.75, 17.25).Select
          ActiveSheet.CheckBoxes.Add(230.25, 643.5, 24, 17.25).Select
          ActiveSheet.CheckBoxes.Add(231, 741.75, 24, 17.25).Select
          ActiveSheet.CheckBoxes.Add(231, 761.25, 24, 17.25).Select
          ActiveSheet.CheckBoxes.Add(231, 781.5, 24, 17.25).Select
          ActiveSheet.CheckBoxes.Add(231, 897, 24, 17.25).Select
          ActiveSheet.CheckBoxes.Add(231, 918, 24, 17.25).Select
          ActiveSheet.CheckBoxes.Add(231.75, 1034.25, 24, 17.25).Select
          ActiveSheet.CheckBoxes.Add(231.75, 1053, 24, 17.25).Select
          ActiveSheet.CheckBoxes.Add(231.75, 1073.25, 24, 17.25).Select
          ActiveSheet.CheckBoxes.Add(231.75, 1189.5, 24, 17.25).Select
          ActiveSheet.CheckBoxes.Add(231.75, 1209, 24, 17.25).Select
          ActiveSheet.CheckBoxes.Add(231.75, 1228.5, 24, 17.25).Select
          ActiveSheet.CheckBoxes.Add(231.75, 1345.5, 24, 17.25).Select
          ActiveSheet.CheckBoxes.Add(231.75, 1365.75, 24, 17.25).Select
          ActiveSheet.CheckBoxes.Add(231.75, 1385.25, 24, 17.25).Select
          ActiveSheet.CheckBoxes.Add(231.75, 1503.75, 27.75, 17.25).Select
          ActiveSheet.CheckBoxes.Add(231.75, 1521.75, 27.75, 17.25).Select
          ActiveSheet.CheckBoxes.Add(231.75, 1541.25, 27.75, 17.25).Select
          ActiveSheet.CheckBoxes.Add(231, 1638.75, 24, 17.25).Select
          ActiveSheet.CheckBoxes.Add(231, 1659, 24, 17.25).Select
          ActiveSheet.CheckBoxes.Add(231, 1677.75, 24, 17.25).Select
          ActiveSheet.CheckBoxes.Add(231, 1794.75, 24, 17.25).Select
          ActiveSheet.CheckBoxes.Add(231, 1814.25, 24, 17.25).Select
          ActiveSheet.CheckBoxes.Add(231, 1834.5, 24, 17.25).Select
          ActiveSheet.CheckBoxes.Add(231, 1950.75, 24, 17.25).Select
          ActiveSheet.CheckBoxes.Add(231, 1971, 24, 17.25).Select
          ActiveSheet.CheckBoxes.Add(231, 1989.75, 24, 17.25).Select
          ActiveSheet.CheckBoxes.Add(231, 2087.25, 24, 17.25).Select
          ActiveSheet.CheckBoxes.Add(231, 2107.5, 24, 17.25).Select
          ActiveSheet.CheckBoxes.Add(230.25, 2223, 24, 17.25).Select
          ActiveSheet.CheckBoxes.Add(230.25, 2242.5, 24, 17.25).Select
          ActiveSheet.CheckBoxes.Add(230.25, 2262, 24, 17.25).Select
          ActiveSheet.CheckBoxes.Add(230.25, 2379, 24, 17.25).Select
          ActiveSheet.CheckBoxes.Add(230.25, 2398.5, 24, 17.25).Select
          ActiveSheet.CheckBoxes.Add(230.25, 2418, 24, 17.25).Select
          ActiveSheet.CheckBoxes.Add(230.25, 2515.5, 24, 17.25).Select
          ActiveSheet.CheckBoxes.Add(230.25, 2535, 24, 17.25).Select
          ActiveSheet.CheckBoxes.Add(230.25, 2554.5, 24, 17.25).Select

          voila merci a ceux qui m'ont aidé