1. #1
    Futur Membre du Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    mai 2012
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : mai 2012
    Messages : 25
    Points : 5
    Points
    5

    Par défaut Suite repetitive de semaine en fonction de l'année

    Bonjour à tous,
    Je vous joint un fichier dans lequel je souhaiterais remplir un tableau avec des numéros de semaine en fonction de l'année saisi dans une autre cellule.
    Je m'explique j'ai un tableau (trame) en J3:O13 dans lequel on retrouve pour l'année 2017, les 6 colonnes de cycle avec pour chaque cellules les numéros de semaine de 2017. Les semaines se suivent sur un roulement de 6 semaines. Mon cycle de départ correspond à la semaine 21 (en jaune) qui correspond au cycle 3. ainsi, les semaines 27,33,39,45,51 sont également en cycle3.
    Je souhaiterais que mes cellules A5:F13 se remplissent automatiquement en fonction de l'année rentrée en B1 et ce en respectant les années bissextiles et surtout les années à 53 semaines.
    En J17:O28 se trouve l'exemple de ce que l'on devrait obtenir pour 2018
    Si quelqu'un à une idée ?
    Merci d'avance
    Cordialement
    Fichiers attachés Fichiers attachés

  2. #2
    Rédacteur

    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    janvier 2010
    Messages
    7 587
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : janvier 2010
    Messages : 7 587
    Points : 17 756
    Points
    17 756
    Billets dans le blog
    6

    Par défaut

    Bonjour,
    L'utilisation systématique du renvoi vers un classeur à télécharger pour comprendre la question posée devient de plus en plus systématique et n'est pas le bienvenu.
    Beaucoup de contributeurs dont je fais partie n'ouvrent jamais ces classeurs.

    En attendant que tu exposes clairement ce que tu souhaites obtenir avec par exemple une image de
    En J17:O28 se trouve l'exemple de ce que l'on devrait obtenir pour 2018
    je te conseille la lecture de ces tutoriels
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Quelques contributions : USERFORM - Créer, Consulter, Modifier et Supprimer des enregistrements à l'aide d'un formulaire - Géolocalisation d'une adresse avec Excel et Google sans VBA

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    mai 2012
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : mai 2012
    Messages : 25
    Points : 5
    Points
    5

    Par défaut

    Ok je comprend
    Voici une copie d'écran pour étayer mes écris.
    J'espère que ça aidera à comprendre mon problème
    Cordialement
    Images attachées Images attachées  

  4. #4
    Expert éminent sénior Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    juin 2007
    Messages
    8 123
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur

    Informations forums :
    Inscription : juin 2007
    Messages : 8 123
    Points : 14 822
    Points
    14 822

    Par défaut

    Mettre en A5 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =DECALER(J5;($B$1-$J$3)*16;0)
    Copier A5 en A5:F13.
    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion.

  5. #5
    Membre expert
    Homme Profil pro
    Retraité
    Inscrit en
    juin 2012
    Messages
    1 372
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Enseignement

    Informations forums :
    Inscription : juin 2012
    Messages : 1 372
    Points : 3 054
    Points
    3 054

    Par défaut

    Bonjour,
    Nom : Cycle.JPG
Affichages : 9
Taille : 67,3 Ko
    La proposition illustrée ci-dessus consiste à construire une table (j'ai donné ce nom à la plage Q2:S17 en réservant la ligne 1 aux titres des champs) donnant pour chaque millésime le nombre de semaines de l'année et le cycle de la première semaine de l'année. Cette table peut très bien se construire sur une autre feuille.
    Pour les millésimes, écrire 2017 en Q2 puis en Q3 la formule :
    à recopier autant que nécessaire vers le bas.
    Pour le nombre de semaines de l'année, on peut utiliser la fonction NO.SEMAINE.ISO pour obtenir le numéro de la dernière semaine de l'année.
    On peut penser à chercher le numéro de semaine du 31 décembre donné par DATE(millésime;12;31) à condition que le jour de semaine de ce 31 décembre ne soit pas inférieur à 4 (cas d'un lundi, mardi ou mercredi) auquel cas la fonction renverrait 1 considérant qu'il s'agit de la première semaine de l'année suivante. Dans ce cas, en retranchant au numéro de série du 31 décembre le jour de semaine du 31 décembre, on obtient le dimanche précédent qui nous donnera alors la dernière semaine de l'année.
    Ecrire donc en R2 la formule :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    = NO.SEMAINE.ISO( DATE(Q2;12;31) - JOURSEM(DATE(Q2;12;31);2) * (JOURSEM(DATE(Q2;12;31);2)<4) )
    à recopier vers le bas.
    Pour le cycle correspondant à la première semaine d'une année, écrire 1 en S2 puisque l'on sait que la première année de 2017 correspondait au cycle 1.
    Ecrire en S3 la formule :
    à recopier vers le bas.
    On peut s'occuper maintenant du planning en A5:F14.
    Pour ne pas avoir des formules trop longues, on peut définir deux noms :
    Cycledébut par la formule :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =RECHERCHEV(Feuil1!$B$1;table;3;FAUX)
    taille (nb de semaines) par :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =RECHERCHEV(Feuil1!$B$1;table;2;FAUX)
    Ecrire en A5 la formule :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    = COLONNE() - Cycledébut + 1
    et recopier cette formule sur la droite en A5:E5.
    Ecrire en A6 la formule:
    et recopier cette formule sur toute la plage A6:F14.
    Il suffit d'un format personnalisé et d'une MFC pour effacer de ce planning les nombres inattendus dans la plage A5:F14.
    Le format personnalisé 0;;; permet de ne plus voir le -1 en A5 et le 0 en B5.
    Il faut aussi effacer les résultats supérieurs au nombre de semaines de l'année (taille) mais on est obligé de passer par une MFC car on ne peut employer dans un format personnalisé une valeur variable (52 ou 53) donnée par un nom.
    On peut retrouver la MFC employée dans le classeur joint ainsi qu'une seconde MFC effaçant les bordures des cellules de la ligne 14 lorsqu'elle est inutile dans le planning.
    OUF !!! La recherche reste un plaisir mais la tentative d'explication est plus laborieuse.
    Cordialement
    Claude
    Fichiers attachés Fichiers attachés

Discussions similaires

  1. Réponses: 8
    Dernier message: 20/01/2010, 14h51
  2. Réponses: 1
    Dernier message: 06/11/2009, 14h52
  3. Réponses: 12
    Dernier message: 02/08/2009, 14h18
  4. Calcul numéro de semaine en fonction d'une date
    Par Devilju69 dans le forum PHP & MySQL
    Réponses: 2
    Dernier message: 05/06/2009, 21h11
  5. Réponses: 1
    Dernier message: 18/04/2008, 15h40

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo