IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Forcer l'affichage du numéro du mois sur 2 chiffres


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Technicien
    Inscrit en
    Septembre 2018
    Messages
    37
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Technicien
    Secteur : Service public

    Informations forums :
    Inscription : Septembre 2018
    Messages : 37
    Par défaut Forcer l'affichage du numéro du mois sur 2 chiffres
    Bonjour,

    Alors tout d'abord, sachez que mon code est détaillé ici:
    https://www.developpez.net/forums/d1...tres-feuilles/

    Dans ce code, à un moment je rajoute des feuilles. ce nombre de feuilles dépend de la durée d'acquisition de mon fichier. Dans mon exemple, la durée fait 5 mois, donc 5 feuilles mensuelles ajoutées.

    Ensuite je veux nommer ces feuilles. Le nommage que je souhaite sera par exemple mois 05, mois 06...
    Voici comment j'ai procédé...mais cela marche sur la première feuille mensuelle mais pas les autres...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    nummoisdeb = Month(Range("A2"))
    nummoisdeb = Format(nummoisdeb, "00")
     
    Sheets.Add(after:=Worksheets(Worksheets.Count)).Name = "mois" & " " & nummoisdeb
         For i = 1 To feuillesmensuelles - 1
    Sheets.Add(after:=Worksheets(Worksheets.Count)).Name = "mois" & " " & nummoisdeb + i.Format("00")
         Next

  2. #2
    Membre expérimenté Avatar de lucasgaetan
    Homme Profil pro
    dessinateur BE
    Inscrit en
    Août 2011
    Messages
    175
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : dessinateur BE
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2011
    Messages : 175
    Par défaut
    Bonjour Bert35,

    je pense que ton problème viens de l’addition de choux et de carottes (comme disait ma prof de math)

    Essais un truc du genre:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    nummoisdeb = Month(Range("A2"))
    For i = 0 To feuillesmensuelles -1
        Sheets.Add(after:=Worksheets(Worksheets.Count)).Name = "mois" & " " & Format(nummoisdeb + i, "00")
    Next
    Ici je converti le format au dernier moment pour avoir moins de conflits.

  3. #3
    Membre averti
    Homme Profil pro
    Technicien
    Inscrit en
    Septembre 2018
    Messages
    37
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Technicien
    Secteur : Service public

    Informations forums :
    Inscription : Septembre 2018
    Messages : 37
    Par défaut
    Impeccable ca marche.
    C'est un sac de nœud dans ma tête, il va falloir que je progresse là dessus aussi.

  4. #4
    Membre averti
    Homme Profil pro
    Technicien
    Inscrit en
    Septembre 2018
    Messages
    37
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Technicien
    Secteur : Service public

    Informations forums :
    Inscription : Septembre 2018
    Messages : 37
    Par défaut
    En fait, j'ai fait de nouveaux test et j'ai aperçu une "erreur" dans mon affichage des numéros de mois dans le noms des feuilles.

    Admettons que mon acquisition démarre en mai et se termine en janvier de l'année suivante. Cela fait une acquisition qui s'est étendue sur 9 mois.
    Donc mes numéros de feuilles vont afficher 05 pour le mois de mai, 06 pour juin....jusqu'à..13 pour janvier.
    Je veux donc que mon comteur reparte à 01 une fois que l'acqusition se déroule sur 2 années.
    Mais je ne sais pas comment lui dire cette condiion.
    En faisant cela, j'ai fait apparaitre un autre "détail". Si mon acquisition dure 14 mois au départ de mai, il faut que je précise également l'année, pour ne pas avoir des noms de feuilles identitiques.
    J'ai modifié mon code pour faire apparaitre le numéro de l'année, ca ca marche. Mais là aussi le numéro de l'année ne s'incrémente pas de 1 quand on change d'année.
    je me retrouve donc avec des feuilles nommées 13_2017, 14_2017 au lieu de 01_2018, 02_2018...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Sheets.Add(after:=Worksheets(Worksheets.Count)).Name = Format(nummoisdeb + i, "00") & "_" & Format(annee, "00")

  5. #5
    Expert confirmé
    Homme Profil pro
    Responsable des études
    Inscrit en
    Juillet 2014
    Messages
    2 681
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aude (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Responsable des études
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2014
    Messages : 2 681
    Par défaut
    Bonjour,
    Citation Envoyé par bert35 Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Sheets.Add(after:=Worksheets(Worksheets.Count)).Name = Format(nummoisdeb + i, "00") & "_" & Format(annee, "00")
    A tester:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Sheets.Add(after:=Worksheets(Worksheets.Count)).Name = Format(nummoisdeb + i mod 12, "00") & "_" & Format(annee +worksheetfunction.quotient(nummoisdeb + i,12), "00")

  6. #6
    Membre averti
    Homme Profil pro
    Technicien
    Inscrit en
    Septembre 2018
    Messages
    37
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Technicien
    Secteur : Service public

    Informations forums :
    Inscription : Septembre 2018
    Messages : 37
    Par défaut
    Merc pour ton aide rapide.
    Alors il y a du mieux, mais pas tout à fait ça...
    Avec ton code, mes mois sont 05_2017, 06_2017....11_2017, 12_2018, 13_2018....
    Il a incrémenté l'année un mois trop tôt (ca passe vite une année mais quand même !! ), et ne s'est pas remis à 01 en janvier 2018

Discussions similaires

  1. Réponses: 14
    Dernier message: 26/03/2016, 09h58
  2. Réponses: 6
    Dernier message: 15/11/2007, 12h31
  3. Mois sur 2 chiffres
    Par ade94 dans le forum VBA Access
    Réponses: 6
    Dernier message: 20/06/2007, 15h42
  4. Forcer l'affichage d'une page jsp sur un ecran 800*600
    Par menzlitsh dans le forum Struts 1
    Réponses: 2
    Dernier message: 25/10/2006, 10h22
  5. [XML][XSL] Forcer l'affichage sur le navigateur avant la fin
    Par FreddyP dans le forum XML/XSL et SOAP
    Réponses: 3
    Dernier message: 08/05/2006, 13h36

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