begin process at 2012 02 09 23:39:47
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

VB.NET

 > JOUR FERIÉ EN VB.NET

JOUR FERIÉ EN VB.NET


 Information sur la source

Note :
Aucune note
Catégorie :VB.NET Source .NET ( DotNet ) Niveau :Débutant Date de création :16/04/2003 Date de mise à jour :16/04/2003 14:42:25 Vu :7 007

Auteur : gwiwi

Ecrire un message privé
Commentaire sur cette source (3)
Ajouter un commentaire et/ou une note

 Description

Comme vous le savez surement, les fonctions "date" ont totalement changés entre Vb6 et Vb.NET.

J'ai passé pas mal de temps à modifiez une source VB6 indiquant si un jour est férié ou non et je vous en fait part.

Source

  • Function BooJourFerie(ByVal Jour As Date) As Boolean
  • Dim JJ, AA, MM As Integer
  • Dim NbOr, Epacte As Integer
  • Dim PLune, Paques, Ascension, Pentecote As Date
  • JJ = Microsoft.VisualBasic.Day(Jour)
  • MM = Month(Jour)
  • AA = Year(Jour)
  • If JJ = 1 And MM = 1 Then BooJourFerie = True : Exit Function '1 Janvier
  • If JJ = 1 And MM = 5 Then BooJourFerie = True : Exit Function '1 Mai
  • If JJ = 8 And MM = 5 Then BooJourFerie = True : Exit Function '8 Mai
  • If JJ = 14 And MM = 7 Then BooJourFerie = True : Exit Function '14 Juillet
  • If JJ = 15 And MM = 8 Then BooJourFerie = True : Exit Function '15 Août
  • If JJ = 1 And MM = 11 Then BooJourFerie = True : Exit Function '1 Novembre
  • If JJ = 11 And MM = 11 Then BooJourFerie = True : Exit Function '11 Novembre
  • If JJ = 25 And MM = 12 Then BooJourFerie = True : Exit Function '25 Décembre
  • NbOr = (AA Mod 19) + 1
  • Epacte = CType((11 * NbOr - (3 + Int((2 + Int(AA / 100)) * 3 / 7))) Mod 30, Integer)
  • PLune = CDate("19/04/" & AA)
  • PLune = PLune.AddDays(-((Epacte + 6) Mod 30))
  • If Epacte = 24 Then PLune = PLune.AddDays(-1)
  • If Epacte = 25 And (AA >= 1900 And AA < 2000) Then PLune = PLune.AddDays(-1)
  • Paques = PLune.AddDays(-Weekday(PLune) + vbMonday + 7) 'Paques
  • If JJ = Microsoft.VisualBasic.Day(Paques) And MM = Month(Paques) Then BooJourFerie = True : Exit Function
  • Ascension = Paques.AddDays(38) 'Ascension
  • If JJ = Microsoft.VisualBasic.Day(Ascension) And MM = Month(Ascension) Then BooJourFerie = True : Exit Function
  • Pentecote = Ascension.AddDays(11) 'Pentecote
  • If JJ = Microsoft.VisualBasic.Day(Pentecote) And MM = Month(Pentecote) Then BooJourFerie = True : Exit Function
  • BooJourFerie = False
  • End Function
    Function BooJourFerie(ByVal Jour As Date) As Boolean
        Dim JJ, AA, MM As Integer
        Dim NbOr, Epacte As Integer
        Dim PLune, Paques, Ascension, Pentecote As Date

        JJ = Microsoft.VisualBasic.Day(Jour)
        MM = Month(Jour)
        AA = Year(Jour)

        If JJ = 1 And MM = 1 Then BooJourFerie = True : Exit Function '1 Janvier
        If JJ = 1 And MM = 5 Then BooJourFerie = True : Exit Function '1 Mai
        If JJ = 8 And MM = 5 Then BooJourFerie = True : Exit Function '8 Mai
        If JJ = 14 And MM = 7 Then BooJourFerie = True : Exit Function '14 Juillet
        If JJ = 15 And MM = 8 Then BooJourFerie = True : Exit Function '15 Août
        If JJ = 1 And MM = 11 Then BooJourFerie = True : Exit Function '1 Novembre
        If JJ = 11 And MM = 11 Then BooJourFerie = True : Exit Function '11 Novembre
        If JJ = 25 And MM = 12 Then BooJourFerie = True : Exit Function '25 Décembre

        NbOr = (AA Mod 19) + 1
        Epacte = CType((11 * NbOr - (3 + Int((2 + Int(AA / 100)) * 3 / 7))) Mod 30, Integer)
        PLune = CDate("19/04/" & AA)
        PLune = PLune.AddDays(-((Epacte + 6) Mod 30))
        If Epacte = 24 Then PLune = PLune.AddDays(-1)
        If Epacte = 25 And (AA >= 1900 And AA < 2000) Then PLune = PLune.AddDays(-1)

        Paques = PLune.AddDays(-Weekday(PLune) + vbMonday + 7)   'Paques
        If JJ = Microsoft.VisualBasic.Day(Paques) And MM = Month(Paques) Then BooJourFerie = True : Exit Function

        Ascension = Paques.AddDays(38)   'Ascension
        If JJ = Microsoft.VisualBasic.Day(Ascension) And MM = Month(Ascension) Then BooJourFerie = True : Exit Function

        Pentecote = Ascension.AddDays(11)  'Pentecote
        If JJ = Microsoft.VisualBasic.Day(Pentecote) And MM = Month(Pentecote) Then BooJourFerie = True : Exit Function

        BooJourFerie = False
    End Function



 Sources de la même categorie

Source .NET (Dotnet) MODIFICATION DATE DE WINDOWS EN VB.NET ET VBA par us_30
Source avec Zip Source avec une capture Source .NET (Dotnet) ENVOI DE MAIL AVEC PIÈCE JOINTE par EhJoe
Source .NET (Dotnet) AMUSONS NOUS AVEC UN LABEL ^^ par Adn56
Source avec Zip Source avec une capture Source .NET (Dotnet) UN NAVIGATEUR INTERNET EN VB.NET par azrti
Source avec Zip Source .NET (Dotnet) CONVERSION DE DEVISE MONAITAIRE VIA UN SERVICE WEB par bigmonkey7

Commentaires et avis

Commentaire de KaViDee le 16/04/2003 16:57:18

Une petite remarque qui à pas grand chose a voir avec ta source:
en VB6, "Dim Variable As Integer" = "Dim Variable As Short"  en VB.net

Commentaire de Falk le 16/04/2003 23:07:29

Petite précision :
Migration de VB 6 vers VB.NET

Le type Short 16bits remplace le type Integer 16Bits
Le type Integer 16Bits devient le type Integer 32Bits
Le type long de 32Bits passe a 64bits

Commentaire de ellandarGDE le 26/02/2004 11:48:53

Tant qu'a faire d'etre en .NET l'etre completement :
Function BooJourFerie(ByVal Jour As Date) As Boolean
        Dim JJ, AA, MM As Integer
        Dim NbOr, Epacte As Integer
        Dim PLune, Paques, Ascension, Pentecote As Date

        JJ = Jour.Day
        MM = Jour.Month
        AA = Jour.Year

        If JJ = 1 And MM = 1 Then Return True '1 Janvier
        If JJ = 1 And MM = 5 Then Return True '1 Mai
        If JJ = 8 And MM = 5 Then Return True '8 Mai
        If JJ = 14 And MM = 7 Then Return True '14 Juillet
        If JJ = 15 And MM = 8 Then Return True '15 Août
        If JJ = 1 And MM = 11 Then Return True '1 Novembre
        If JJ = 11 And MM = 11 Then Return True '11 Novembre
        If JJ = 25 And MM = 12 Then Return True '25 Décembre

        NbOr = (AA Mod 19) + 1
        Epacte = CType((11 * NbOr - (3 + Int((2 + Int(AA / 100)) * 3 / 7))) Mod 30, Integer)
        PLune = CDate("19/04/" & AA)
        PLune = PLune.AddDays(-((Epacte + 6) Mod 30))
        If Epacte = 24 Then PLune = PLune.AddDays(-1)
        If Epacte = 25 And (AA &gt;= 1900 And AA &lt; 2000) Then PLune = PLune.AddDays(-1)

        Paques = PLune.AddDays(-Weekday(PLune) + vbMonday + 7)   'Paques
        If JJ = Paques.Day And MM = Paques.Month Then Return True

        Ascension = Paques.AddDays(38)   'Ascension
        If JJ = Ascension.Day And MM = Ascension.Month Then Return True

        Pentecote = Ascension.AddDays(11)   'Pentecote
        If JJ = Pentecote.Day And MM = Pentecote.Month Then Return True
        Return False

    End Function

 Ajouter un commentaire




Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,577 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales