collection fausse boite de dialogue (Patricktoulon) episode 1 un vrai faux calendrier

collection fausse boite de dialogue (Patricktoulon) episode 1 un vrai faux calendrier 4.2.2 Belgique

bonjour a tous
Version 4.2.2
j'ajoute les jours fériés pour la Belgique c'est la région 44
et .. ça va faire plaisir a @ChTi160 j’intègre définitivement son idée
le carré date d'aujourd'hui devient donc cliquable
c'est un raccourci pour revenir au mois en cours dans le calendrier
demo7.gif
bonjour a tous
j'ai ajouté le positionnement sur textbox et shapes sur feuille
et la fonction showCenter qui l'affiche au centre de l’écran

demo7.gif
bonjour a tous
juste une petite correction pour les numéros de semaine
l'index pour weekday n'etait pas dynamique
VB:
'mise ajour du clavier
Public Sub ReloadClavier()
    Dim X&, I&, A&, NB_JOURS&, Y&, WkD&, j&
    If Cbmonth.Value = "" Or Cbyear.Value = "" Then Exit Sub
    Select Case Calendar.region
    Case 0, 22: WkD = vbSunday: j = 1
    Case 1, 2, 12, 13: WkD = vbMonday: j = 2
    End Select
    X = Weekday(DateSerial(Calendar.Cbyear, Calendar.Cbmonth.ListIndex + 1, 1), WkD)
    NB_JOURS = Day(DateSerial(Cbyear.Value, Cbmonth.ListIndex + 2, 0))
    For I = 1 To 6: Me.Controls("sem" & I) = "": Next
    For I = 1 To 42
        With Calendar.Controls("j" & I)
            .Caption = "": .Enabled = False: .BackColor = bt2Back: .ControlTipText = ""
            If I >= X And A <= NB_JOURS - 1 Then
                .Visible = True: A = A + 1: .Enabled = True: .Caption = A: .BackColor = bt1Back

                Y = CLng(DateSerial(Calendar.Cbyear.Value, Calendar.Cbmonth.ListIndex + 1, A))
                Controls(.Tag).Caption = Evaluate("= TRUNC((" & Y & "-WEEKDAY(" & Y & "," & j & ")+11-DATE(YEAR(" & Y & "-WEEKDAY(" & Y & " ," & j & ")+4),1,1))/7)")
                .BackColor = férié(I)
            End If
        End With
    Next
End Sub
Bonjour a tous
voici 3 nouvelles regions
Italien
Suisse( Genève,Vaud,Neuchatel,etc..)
royaume uni(Angleterre,pays de galles,Irlande du nord,écosse)
pour la suisse et le royaume uni il y a plusieurs sub regions que j'ai signifier entre parentheses dans les controltiptext

récapitulatif interface dispo actuellement
0 =US
1=FR
2=CA
22=QUEBEC
12=Italie
13=suisse
33=royaume uni

bien évidemment l'interface est toujours dans la langue appelée
exemple d'appel
VB:
Option Explicit

Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
    If Target.Count > 1 Then Exit Sub
    If Target(1).Row = 1 Or Target.Columns.Count > 1 Then Exit Sub
    Cancel = True

    Select Case Target.Column

    Case 1: Target = Calendar.ShowX(Target(1), 2, 0, 0):    ' region = 0  Etats Unis

    Case 2: Target = Calendar.ShowX(Target(1), 2, 0, 1):    ' region = 1  France

    Case 3: Target = Calendar.ShowX(Target(1), 2, 0, 2):    ' region = 2   Canada

    Case 4: Target = Calendar.ShowX(Target(1), 2, 0, 22):    ' region = 22  "QUEBEC" Canada

    Case 5: Target = Calendar.ShowX(Target(1), 2, 0, 12):    ' region = 12  "Italie"

    Case 6: Target = Calendar.ShowX(Target(1), 2, 0, 13):    ' region = 13  "suisse"(plusieurs sub régions)

    Case 7: Target = Calendar.ShowX(Target(1), 2, 0, 33):    ' region = 33  "Grande Bretagne"(plusieurs sub région)

    Case Else: Target = Calendar.ShowX(Target(1), 0, 2):    'automatique region

    End Select

  End Sub
demo7.gif


enjoy :)
Bonjour a tous
VERSION 4.1.7Q
j'ai ajouté la région 22 pour l'affichage québécois partie francophone du Canada
dont le semaine commence un dimanche comme en US mais en langage français
bien entendu j'ai ajouté les jours fériés qui sont propres a cette partie du canada
j'ai revu aussi 2/3 petites choses afin de faciliter l'ajout de région(pays+langage+fériés)

et les couleurs sont maintenant paramétrables en haut de module avec les constantes (commentée pour identifier leur fonction)
Vous pouvez désormais lui donner l'apparence de votre choix

un petit visuel pour donner une idée des possibilités
demo7.gif

enjoy:)
Ajout de deux jour féries pour (l'Alsace et la Moselle)
vendredi saint 2 jours avant pâques
Saint Etienne noel+1 jour

correction des accents dans les tooltiptext dynamique
bonjour a tous
2 petite mises a jour
'*mise a jour 26/10/2020
'*passage des N°de semaine en ISO avec fonction perso(((((compatible toutes version excel)))))
'
'*mise ajour 28/10/2020
'*coloration automatique des weekend(Fr samedi/dimanche) (US vendredi / samedi) qui était absent de cette version du calendrier
pour la couleur de la pentecôte et le lundi de pentecôte


VB:
Case dat = paques + 49: férié = RGB(255, 200, 0): ctrlJ.ControlTipText = "Pentecote"                                      '  pentecote        calculée
        Case dat = paques + 50: férié = RGB(255, 200, 0): ctrlJ.ControlTipText = "Lundi de Pentecote"                                      '  pentecote        calculée
V 4.1.4
correction d'un bug mineur sur
la synchronisation spinbutton et combobox des mois

Ajout:
remise en place du roll (up/down) sur le spinbutton des mois comme dans les version 1 à 2.x
(janvier-1 = décembre année précédente)
(décembre +1 = janvier année suivante )
juste une petite correction sur la target empty
V4.1.1
Haut Bas