Accueil > > > CALENDRIER SOUS ACCES 2000
CALENDRIER SOUS ACCES 2000
Information sur la source
Description
Vous en avez marre de taper des dates ? Avec un formulaire et un module, vous pourrez ajouter un calendrier à vos applications. Il gère les jours fériés, un affichage different pour les jours ouvrés. Pour les jours ouvrés j'ai choisi de passer par un fichier ".ini" car je me sers du calendrier comme complément installé. ce qui permet à l'utilsateur final de modifier les jours ouvrés sans avoir acces aux sources. Inserez : Zone_a_dater = calendrier(zone_a_dater) Le parametre permet d'afficher la date qu'il y a dans la zone avant d'afficher le calendrier, si vous ne passez rien, le calendrier par de la date systeme de votre ordi. Manipulation: - echap pour annuler - double clic ou touche entrée pour valider - déplacement avec les fleches directionnelles possible - pageup/down fait descendre/monter dans les mois bon ok, c pas terrible, mais depuis que je pompe des trucs ici, je me devais de mettre qqchose. Destiné aux débutans, ou aux fleimards comme moi.
Source
- '
- ' CALENDRIER
- ' JerryMcFly - 08/04/2000
- '
-
- Option Compare Database
-
-
- '*
- '* Définition des parametres et variables
- '*
-
- '### Parametres : Jours Ouvrés
- Public JO1 As Boolean
- Public JO2 As Boolean
- Public JO3 As Boolean
- Public JO4 As Boolean
- Public JO5 As Boolean
- Public JO6 As Boolean
- Public JO7 As Boolean
-
- '### Constantes : Couleurs
- Const Couleur_Jour_NO = 13209
- Const Couleur_Jour_O = 0
-
- '### Varaibles
- Public Vdate As String
- Public Vjour As Integer
- Public Vsemaine As Integer
- Public Vmois As Integer
- Public Vannée As Long
- Public Vprem_jour As Integer
- Public Vnb_jours As Integer
-
- '### Initialisation des parametres
- Private Function init_param()
- JO1 = GetIni("JOURS OUVRES", "Lundi", CurrentProject.Path & "\parametres\Calendrier.ini")
- JO2 = GetIni("JOURS OUVRES", "Mardi", CurrentProject.Path & "\parametres\Calendrier.ini")
- JO3 = GetIni("JOURS OUVRES", "Mercredi", CurrentProject.Path & "\parametres\Calendrier.ini")
- JO4 = GetIni("JOURS OUVRES", "Jeudi", CurrentProject.Path & "\parametres\Calendrier.ini")
- JO5 = GetIni("JOURS OUVRES", "Vendredi", CurrentProject.Path & "\parametres\Calendrier.ini")
- JO6 = GetIni("JOURS OUVRES", "Samedi", CurrentProject.Path & "\parametres\Calendrier.ini")
- JO7 = GetIni("JOURS OUVRES", "Dimanche", CurrentProject.Path & "\parametres\Calendrier.ini")
- End Function
-
- '### 1ere Initialisation du calendrier a l'ouverture
- Private Sub Form_Load()
- init_param
- calc_var
- End Sub
-
- '*
- '* Capture des evenements Clavier
- '*
- Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
- Select Case KeyCode
- 'annulation - validation
- Case vbKeyEscape: Vdate = "": Me.Visible = False
- Case vbKeyReturn: Me.Visible = False
- 'deplacement dans les jours
- Case vbKeyRight: Vdate = DateAdd("d", 1, Vdate): calc_var
- Case vbKeyLeft: Vdate = DateAdd("d", -1, Vdate): calc_var
- 'deplacement dans les semaines
- Case vbKeyDown: Vdate = DateAdd("d", 7, Vdate): calc_var
- Case vbKeyUp: Vdate = DateAdd("d", -7, Vdate): calc_var
- 'deplacement dans les mois
- Case vbKeyPageUp: Vdate = DateAdd("m", -1, Vdate): calc_var
- Case vbKeyPageDown: Vdate = DateAdd("m", 1, Vdate): calc_var
- End Select
- KeyCode = 0
- End Sub
-
-
-
- '*
- '* FONCTION PRINCIPALE : calcul des variables et affichage du calendrier
- '*
- Private Function calc_var()
- Dim PT As Integer: Dim PTCase As String
-
- If Vdate = "" Or IsNull(Vdate) Then Vdate = Date
- Vjour = CInt(Day(Vdate))
- Vmois = CInt(Month(Vdate))
- Vannée = CLng(Year(Vdate))
- Vprem_jour = CInt(Weekday("01/" & Vmois & "/" & Vannée, vbMonday))
- Vnb_jours = CInt((DateAdd("m", 1, "01/" & Vmois & "/" & Vannée) _
- - (CDate("01/" & Vmois & "/" & Vannée))))
-
- 'Masquage de toutes les cases
- For PT = 1 To 42
- PTCase = "J" & Format(PT, "00")
- Me(PTCase).BorderStyle = 0
- Me(PTCase).Visible = False
- Next
-
- 'Affichage des jours
- For PT = 1 To Vnb_jours
- PTCase = "J" & Format(PT + Vprem_jour - 1, "00")
- With Me(PTCase)
- .ForeColor = Couleur_jour(PT & "/" & Vmois & "/" & Vannée)
- If Ferié(PT & "/" & Vmois & "/" & Vannée) Then .ForeColor = Couleur_Jour_NO
- .Caption = PT
- .Visible = True
- If PT = Vjour Then .BorderStyle = 1
- End With
- Next
- ListMois = Vmois
- SelAnnée = Vannée
- End Function
-
- '*
- '* SS Fonction, renvoie la couleur du jour en Fonction de Jour ouvré OUI/NON
- '*
- Private Function Couleur_jour(Journée) As Long
- Couleur_jour = Couleur_Jour_NO
- Select Case Weekday(Journée, vbMonday)
- Case 1: If JO1 Then Couleur_jour = Couleur_Jour_O
- Case 2: If JO2 Then Couleur_jour = Couleur_Jour_O
- Case 3: If JO3 Then Couleur_jour = Couleur_Jour_O
- Case 4: If JO4 Then Couleur_jour = Couleur_Jour_O
- Case 5: If JO5 Then Couleur_jour = Couleur_Jour_O
- Case 6: If JO6 Then Couleur_jour = Couleur_Jour_O
- Case 7: If JO7 Then Couleur_jour = Couleur_Jour_O
- End Select
- End Function
-
- '*
- '* SS Fonction, encadre le jour demandé
- '*
- Private Function Eff_Bords(JS As Integer)
- 'Masquage de tous les contours
- For i = 1 To 42
- Icase = "J" & Format(i, "00")
- Me(Icase).BorderStyle = 0
- If i = JS Then Me(Icase).BorderStyle = 1
- Next
- Icase = "J" & Format(JS, "00")
- Vdate = JS - Vprem_jour + 1 & "/" & Vmois & "/" & Vannée
- Do While Not Me(Icase).Visible
- JS = JS - 1
- Vdate = JS - Vprem_jour + 1 & "/" & Vmois & "/" & Vannée
- Loop
- End Function
-
- '*
- '* Déplacements dans les Mois et années par les contrôles du formulaire
- '*
- Private Sub ListMois_AfterUpdate()
- Vdate = DateAdd("m", ListMois - Vmois, Vdate): calc_var
- End Sub
- Private Sub SpinMois_SpinDown()
- Vdate = DateAdd("yyyy", -1, Vdate): calc_var
- End Sub
- Private Sub SpinMois_SpinUp()
- Vdate = DateAdd("yyyy", 1, Vdate): calc_var
- End Sub
-
'
' CALENDRIER
' JerryMcFly - 08/04/2000
'
Option Compare Database
'*
'* Définition des parametres et variables
'*
'### Parametres : Jours Ouvrés
Public JO1 As Boolean
Public JO2 As Boolean
Public JO3 As Boolean
Public JO4 As Boolean
Public JO5 As Boolean
Public JO6 As Boolean
Public JO7 As Boolean
'### Constantes : Couleurs
Const Couleur_Jour_NO = 13209
Const Couleur_Jour_O = 0
'### Varaibles
Public Vdate As String
Public Vjour As Integer
Public Vsemaine As Integer
Public Vmois As Integer
Public Vannée As Long
Public Vprem_jour As Integer
Public Vnb_jours As Integer
'### Initialisation des parametres
Private Function init_param()
JO1 = GetIni("JOURS OUVRES", "Lundi", CurrentProject.Path & "\parametres\Calendrier.ini")
JO2 = GetIni("JOURS OUVRES", "Mardi", CurrentProject.Path & "\parametres\Calendrier.ini")
JO3 = GetIni("JOURS OUVRES", "Mercredi", CurrentProject.Path & "\parametres\Calendrier.ini")
JO4 = GetIni("JOURS OUVRES", "Jeudi", CurrentProject.Path & "\parametres\Calendrier.ini")
JO5 = GetIni("JOURS OUVRES", "Vendredi", CurrentProject.Path & "\parametres\Calendrier.ini")
JO6 = GetIni("JOURS OUVRES", "Samedi", CurrentProject.Path & "\parametres\Calendrier.ini")
JO7 = GetIni("JOURS OUVRES", "Dimanche", CurrentProject.Path & "\parametres\Calendrier.ini")
End Function
'### 1ere Initialisation du calendrier a l'ouverture
Private Sub Form_Load()
init_param
calc_var
End Sub
'*
'* Capture des evenements Clavier
'*
Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
Select Case KeyCode
'annulation - validation
Case vbKeyEscape: Vdate = "": Me.Visible = False
Case vbKeyReturn: Me.Visible = False
'deplacement dans les jours
Case vbKeyRight: Vdate = DateAdd("d", 1, Vdate): calc_var
Case vbKeyLeft: Vdate = DateAdd("d", -1, Vdate): calc_var
'deplacement dans les semaines
Case vbKeyDown: Vdate = DateAdd("d", 7, Vdate): calc_var
Case vbKeyUp: Vdate = DateAdd("d", -7, Vdate): calc_var
'deplacement dans les mois
Case vbKeyPageUp: Vdate = DateAdd("m", -1, Vdate): calc_var
Case vbKeyPageDown: Vdate = DateAdd("m", 1, Vdate): calc_var
End Select
KeyCode = 0
End Sub
'*
'* FONCTION PRINCIPALE : calcul des variables et affichage du calendrier
'*
Private Function calc_var()
Dim PT As Integer: Dim PTCase As String
If Vdate = "" Or IsNull(Vdate) Then Vdate = Date
Vjour = CInt(Day(Vdate))
Vmois = CInt(Month(Vdate))
Vannée = CLng(Year(Vdate))
Vprem_jour = CInt(Weekday("01/" & Vmois & "/" & Vannée, vbMonday))
Vnb_jours = CInt((DateAdd("m", 1, "01/" & Vmois & "/" & Vannée) _
- (CDate("01/" & Vmois & "/" & Vannée))))
'Masquage de toutes les cases
For PT = 1 To 42
PTCase = "J" & Format(PT, "00")
Me(PTCase).BorderStyle = 0
Me(PTCase).Visible = False
Next
'Affichage des jours
For PT = 1 To Vnb_jours
PTCase = "J" & Format(PT + Vprem_jour - 1, "00")
With Me(PTCase)
.ForeColor = Couleur_jour(PT & "/" & Vmois & "/" & Vannée)
If Ferié(PT & "/" & Vmois & "/" & Vannée) Then .ForeColor = Couleur_Jour_NO
.Caption = PT
.Visible = True
If PT = Vjour Then .BorderStyle = 1
End With
Next
ListMois = Vmois
SelAnnée = Vannée
End Function
'*
'* SS Fonction, renvoie la couleur du jour en Fonction de Jour ouvré OUI/NON
'*
Private Function Couleur_jour(Journée) As Long
Couleur_jour = Couleur_Jour_NO
Select Case Weekday(Journée, vbMonday)
Case 1: If JO1 Then Couleur_jour = Couleur_Jour_O
Case 2: If JO2 Then Couleur_jour = Couleur_Jour_O
Case 3: If JO3 Then Couleur_jour = Couleur_Jour_O
Case 4: If JO4 Then Couleur_jour = Couleur_Jour_O
Case 5: If JO5 Then Couleur_jour = Couleur_Jour_O
Case 6: If JO6 Then Couleur_jour = Couleur_Jour_O
Case 7: If JO7 Then Couleur_jour = Couleur_Jour_O
End Select
End Function
'*
'* SS Fonction, encadre le jour demandé
'*
Private Function Eff_Bords(JS As Integer)
'Masquage de tous les contours
For i = 1 To 42
Icase = "J" & Format(i, "00")
Me(Icase).BorderStyle = 0
If i = JS Then Me(Icase).BorderStyle = 1
Next
Icase = "J" & Format(JS, "00")
Vdate = JS - Vprem_jour + 1 & "/" & Vmois & "/" & Vannée
Do While Not Me(Icase).Visible
JS = JS - 1
Vdate = JS - Vprem_jour + 1 & "/" & Vmois & "/" & Vannée
Loop
End Function
'*
'* Déplacements dans les Mois et années par les contrôles du formulaire
'*
Private Sub ListMois_AfterUpdate()
Vdate = DateAdd("m", ListMois - Vmois, Vdate): calc_var
End Sub
Private Sub SpinMois_SpinDown()
Vdate = DateAdd("yyyy", -1, Vdate): calc_var
End Sub
Private Sub SpinMois_SpinUp()
Vdate = DateAdd("yyyy", 1, Vdate): calc_var
End Sub
Sources de la même categorie
Commentaires et avis
|
Derniers Blogs
[DESIGN PATTERNS] PARTIE 2: DIP: DEPENDENCY INVERSION PRINCIPLE[DESIGN PATTERNS] PARTIE 2: DIP: DEPENDENCY INVERSION PRINCIPLE par tja
C'est le dernier principe des principes du Design Orienté Objet (The Principles of Object Oriented Design) fondés par Robert C. Martin plus connu sous le pseudonyme d'Uncle Bob.
l'image empruntée de LosTechies.
Je ne traite pas les principes dans...
Cliquez pour lire la suite de l'article par tja TECHDAYS PARIS 2010 : SHAREPOINT 2010 POUR LES DéVELOPPEURSTECHDAYS PARIS 2010 : SHAREPOINT 2010 POUR LES DéVELOPPEURS par ROMELARD Fabrice
Animé par: Laurent Cotton Le développement dans SharePoint 2010 passe par plusieurs axes qui seront évoqués dans cette session, mais plus particulièrement les développements simples lié au besoin Business Business Connectivity Services Ce BCS es...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice TECHDAYS PARIS 2010 : PLEINIèRE DERNIER JOURTECHDAYS PARIS 2010 : PLEINIèRE DERNIER JOUR par ROMELARD Fabrice
Cette session est la dernière pleinière de ces 3 jours de TechDays Paris 2010. Généralement, cette troisième journée est plus axée sur l'avenir vu par Microsoft. Après un retour sur l'avenir vu par la Science Fiction ou par ...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice UNE JOLIE-HORLOGE ET PAS QU'UN PEU !UNE JOLIE-HORLOGE ET PAS QU'UN PEU ! par neodante
Pour les possesseurs d'iPhone, ça y est Bijin Tokei - qui se traduit littéralement en Français par " Jolie Horloge " - est arrivé et GRATUITEMENT s'il vous plaît ! Après la version Tokyo, Hokkaido, night club, racing, Gal, "pour les mademoiselles'", . voi...
Cliquez pour lire la suite de l'article par neodante TECHDAYS PARIS 2010 : CONNECTEZ VOS DONNéES à SHAREPOINT 2010 AVEC LES BUSINESS CONNECTIVITY SERVICESTECHDAYS PARIS 2010 : CONNECTEZ VOS DONNéES à SHAREPOINT 2010 AVEC LES BUSINESS CONNECTIVITY SERVICES par ROMELARD Fabrice
Animé par: Gaetan Bouveret et Julien Chomarat Business Connectivity Services (BCS) est dans SharePoint 2010 la version 2 de Business Data Catalog (BDC dans SharePoint 2007). Il s'agit de la solution permettant de visualiser des données provenan...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice
Forum
HTML VERS PDF HTML VERS PDF par 20cent
Cliquez pour lire la suite par 20cent
Logiciels
DB-MAIN (9.1.0)DB-MAIN (9.1.0)DB-MAIN is a data-modeling and data-architecture tool. It is designed to help developers and anal... Cliquez pour télécharger DB-MAIN Xilisoft DPG Convertisseur (5.1.37.0120)XILISOFT DPG CONVERTISSEUR (5.1.37.0120)Xilisoft DPG Convertisseur offre aux fans de Nintendo DS une bonne solution leur permettant de dé... Cliquez pour télécharger Xilisoft DPG Convertisseur GraphicsGale (2.01.01)GRAPHICSGALE (2.01.01)GraphicsGale est un logiciel de PixelArt avec de nombreuse fonctionnalités permettant de réalisé ... Cliquez pour télécharger GraphicsGale Architecte 3D (Platinum 2010)ARCHITECTE 3D (PLATINUM 2010)Architecte 3D Platinium vous permet de concevoir facilement les plans votre future maison, de l'é... Cliquez pour télécharger Architecte 3D TeamViewer 5 (TeamViewer 5)TEAMVIEWER 5 (TEAMVIEWER 5)Dépanner un ami,expliquer une manipulation devient un jeu d'enfant.
Prise en main d'un autre ord... Cliquez pour télécharger TeamViewer 5
|