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 :

prise en compte de la date


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    251
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 251
    Par défaut prise en compte de la date
    BOnjour,

    comment connaître le nombre de colonnes n remplies d'une feuilles excel?
    en fait je voudrais rajouter une colonne à la colonne n-1 ,
    ensuite dans la premiere cellule de la colonne rajoutée, je voudrais inscrire une date.
    cette date sera celle de la colonne n-2 + 1 jour (les week ends ne sont pas à considérer, par exemple si la colonne n-2 tombe sur un vendredi, la date de la nouvelle colonne sera celle du lundi suivant)
    savez -vous comment je pourrais procéder et rémédier aux problèmes de passages de mois??
    merci

  2. #2
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Connaître la dernière colonne de la ligne : Tu as ça partout partout... Dans la FAQ, sur le forum, dans contribuez... Partout ! Un peu de recherche mais ça y est !
    Pour la date, regarde à "NB.JOURS.OUVRES" dans l'aide en ligne Excel, ou Workday dans VBA, les explications seront plus complète que ce que je pourrais te mettre ici.
    Pour ajouter 1 jour à une date c'est "LaDate + 1". Reste à vérifier si "LaDate +1" est un jour ouvré.
    Bon courage

  3. #3
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Et si la date suivante est un jour férié que faites-vous ?

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    251
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 251
    Par défaut
    Bonjour,

    merci pour tous les renseignements
    je jeterai un oeil demain.
    les jours fériés sont en effet un problème .. y a til un moyen de les localiser.??

  5. #5
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Avec "NB.JOURS.OUVRES", tu as une solution. Je vais te faire un cadeau : http://www.developpez.net/forums/sho...d.php?t=297576
    Avec ça, tu devrais pouvoir t'en sortir
    Bon week-end

    Pendant que j'y suis
    Crée un calendrier des seuls jours ouvrés tenant compte des jours fériés. Une feuille par mois.
    J'espère que tu pourras t'en inspirer. Mais NB.JOURS.FERIES, si tu peux l'utiliser, est tout de même plus adapté à ta demande.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    Sub JO()
    Dim ok As Boolean, jf As Boolean, JoursFériés As Variant, k As Byte
    Dim i As Integer, j As Integer, NoLigne As Integer, dateref As Date
        Application.DisplayAlerts = False
        'Suppression de toutes les feuilles du classeur sauf une
        ActiveWorkbook.Sheets.Add Before:=Worksheets(1)
        For i = ActiveWorkbook.Worksheets.Count - 1 To 1 Step -1
            Worksheets(i).Delete
        Next
        JoursFériés = Array("", "1 janvier 2007", "28 mars 2007", "1 mai 2007", "8 mai 2007", "17 mai 2007", "28 mai 2007", "14 juillet 2007", "15 août 2007", "1 novembre 2007", "11 novembre 2007", "25 décembre 2007")
        'On nomme la feuille qui reste (janvier)
        ActiveSheet.Name = Format(DateSerial(2007, 1, 1), "mmmm")
        NoLigne = 2
        For i = 1 To 365
            dateref = DateSerial(2007, 1, i)
            'Création de la feuille du mois
            'La feuille de janvier existe, on l'exclut : C'est le 1er du mois, mois > janvier
            If Format(dateref, "dd") = "01" And Month(dateref) > 1 Then
                NoLigne = 2
                ActiveWorkbook.Sheets.Add After:=Worksheets(Worksheets.Count)
                ActiveWorkbook.ActiveSheet.Name = Format(dateref, "mmmm")
            End If
            jf = False 'Exclusion des jours fériés
            For k = 1 To UBound(JoursFériés)
                jf = jf Or InStr(Format(CDate(dateref), "dd mmmm yyyy"), JoursFériés(k)) <> 0
                If jf Then Exit For 'C'est un jour férié
            Next k
            If Format(Weekday(dateref), "dddd") <> "samedi" And _
                Format(Weekday(dateref), "dddd") <> "dimanche" And _
                Not jf Then
                ActiveSheet.Cells(NoLigne, 1).Formula = UCase(Left(Format(dateref, "dddd"), 1))
                ActiveSheet.Cells(NoLigne, 2).Formula = Format(dateref, "dd")
                NoLigne = NoLigne + 1
            End If
        Next
    End Sub

  6. #6
    Invité
    Invité(e)
    Par défaut
    Bonsoir,

    Ouske'l'nor : pour les jours fériés, il y en a 3 qui sont à date variable et jours de la semaine fixe dont le principal est le jour de Pâques qui défini les 2 autres.

    Dans votre exemple, il faut donc les redéfinir chaque année ou je me trompe ?

    Sinon il y a une solution pour qu'ils soient calculés quelque soit l'année.

Discussions similaires

  1. [XL-2007] Si cellule modifiée alors prise en compte de la date du jour
    Par schott dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 10/06/2011, 09h10
  2. prise en compte de la date effective de la demission
    Par _vince_ dans le forum Démission
    Réponses: 13
    Dernier message: 02/04/2008, 18h11
  3. [Oracle] Clause WHERE non prise en compte ou problème de dates ?
    Par nicobest dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 22/05/2007, 16h22
  4. Erreur Date non prise en compte
    Par priest69 dans le forum Langage SQL
    Réponses: 1
    Dernier message: 23/02/2006, 23h46
  5. [Date dans Mysql] Prise en compte des espaces
    Par tchoukapi dans le forum SQL Procédural
    Réponses: 4
    Dernier message: 02/01/2006, 03h41

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