Macro select plage de cell en fonction d'1 ce

Bonjour,

Je suis a la recherche d'une macro qui doit faire la chose suivante :

A chaque fois que tu trouves 1 dans la colonne B selectionne la plage de cellules correspondantes dans la colonne F et nomme la janvier.
ET
A chaque fois que tu trouves 1 dans la colonne B selectionne la plage de cellules correspondantes dans la colonne BT et nomme la janvier_bis.

Et ainsi de suite jusqu'a décembre

De plus j'ai egalement besoin de créer une macro pouvant effectuer une zone d'impréssion en fonction d'une date de début et une date de fin.

J'ai eu beau chercher je n'ai pas trouvé de solution(s) et je suis une vrai quiche en Macro.
Merci pour votre aide.

4 réponses

  1. Au sercours aidez moi.
    Si je ne suis pas assez clair n'hsitez pas a me le dire ...
    0
    1. Contributeur
      Bonjour,

      Je n'arrive pas à voir la finalité de ton besoin.
      Un simple filtre automatique sur B ne suffit pas ?

      Avec qcq difficultés voici une réponse : http://www.cijoint.fr/cjlink.php?file=cj201104/cijlpzJs3I.xls

      Le problème est que le nombre de cellules d'une sélection multiple nommée semble limité aux environs de 245 (sur excel 2003). Je n'ai pas trouvé dans les spécifications excel la valeur exacte, ni si c'était en nombre de cellule ou en longueur de la chaine .address (en plus .address semble ne retourner que les 250 premiers caractères...)
      Reste à voir si ça te suffira.

      eric

      PS : si B peut être triée ça change la donne...
      0
      1. La feuille de calcule est classée automatiquement par date du 01/01/xx au 31/12/xx
        0
      2. Contributeur
        oui, et ?
        Tu parlais d'une colonne B avec des nombres de 1 à 12 dedans...
        0
      3. bonjour,
        Je voudrais vous déposer une partie du fichier sur le ci-joint mais je pense que mon proxy le refuse. Je vous le mets ce soir de chez moi.
        0
      4. Bonjour,
        Ci-dessous le lien du document "light"
        http://www.cijoint.fr/cjlink.php?file=cj201104/cijtaNlQJ2.xls

        Merci pour votre aide.
        0
      5. S'il te plaît explique en détail ce que tu veux faire et envoies-moi ton email.
        Merci!
        0
    2. Bonjour,

      Le soucis n'est pas résolu mais il ne sert a rien de le garder en cours pouvez vous le marque resolu ?

      Merci
      0
      1. Modérateur
        Bonjour,

        Pourquoi signaler comme résolu ce qui ne l'est pas ? Ce serait induire en erreur les personnes intéressées qui croiraient y trouver la réponse et décourager un éventuel expert de mettre son grain de sel.

        Cordialement.
        0
      2. Par ce que lorsque que je l'ai créée je n'avais pas créée mon compte du coups je ne peut rien en faire, le supprimer ou autre.
        C'etait dans l'objectif de ne pas laisser trainer qqc qui ne sert a rien ou pas a grand chose.
        Après l'admin peut très bien le supprimer le poste ce qui me generai car l'investissement des autres n'est pas vain...
        0
      3. Modérateur
        Pour l'instant, on va lui laisser sa chance ;-)
        0
    3. Bonjour,

      C'est assez confu, mais d'après ce que je comprends tu devrais combiner une boucle (du type "do while .... loop") et un IF dans ta macro.

      Par exemple:

      range("b1").select
      do while activecell() <> ""
      if activecell()=1 then
      activecell().offset(0,4).range("a1").select
      zone = activecell()
      Range(zone).Name = "janvier"
      range(zone).select
      activecell().offset(1,-4).range("a1").select
      else
      activecell().offset(1,0).range("a1").select
      end if
      loop

      J'espère que ça t'aidera.
      -1