Autres Petite mise a jour (exceptionnellement pour cp4) du calendar V4.1(OLDVERSION)

patricktoulon

XLDnaute Barbatruc
Bonjour @cp4
pour faire suite à ton message en MP ,concernant une vielle version du calendar la V4.1

je tiens tout d'abords a dire qu'il y a eu plus de 20 versions au moins qui ont suivi cette version celle ci datant d'à peu près 2019

j'ai donc dézippé mes archives et tu a de la chance j'ai retrouvé la version 4.1.1( c'est la plus ancienne que j'ai gardé dans le zip)
et encore tu a vraiment de la chance je me demande bien pourquoi je l'ai gardé

comme je t'ai dit il n'y a pas de principe double input pour le calendar
mais tu peux très bien jouer cela avec l'event de la cellule dans une feuille
et faire une toute petite modif dans le calendar

j'en ai profité pour revoir le placement sur cellule cette fonction était une vrai usine à gaz inutile

autrement dit ici par exemple en l’occurrence j'ai deux cellules date ( départ/arrivée) ce sont les cellule C3 et C6
en cliquant droite sur C3 le calendar doit s'ouvrir
une fois la date choisi ca passe tout seul a la C6 et le mois et année sont celle de C3

tel que je le code dans l'event beforerightclick rien ne t’empêche de re modifier la C6

VB:
Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
'exemple départ en C3 et arrivée en C6
    Select Case Target.Address(0, 0)
    Case "C3"
        oldvalue = [c3]
        Cancel = True
        Target.Value = Calendar.ShowX(Target, 2, 0, 1)
        If Target = oldvalue Then Exit Sub
        [c6] = [c3]
        [c6].Value = Calendar.ShowX([c6], 2, 0, 1)
        If [c6] = [c3] Then [c6] = ""
    Case "C6"
        Cancel = True
        Target.Value = Calendar.ShowX(Target, 2, 0, 1)
    Case Else: Cancel = False
    End Select
End Sub

encore une fois ça démontre bien que même les oldversions du calendar sont adaptables à diverses demandes
sans toucher le moindre code du calendar

à l'avenir pour une question d'adaptation perso fait une demande sur le forum
Merci de ta compréhension

ps: il va de soit que le même principe est applicable pour des textbox dans un userform
VB:
Private Sub TextBox1_MouseUp(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
    If Button = 2 Then
        TextBox1 = Calendar.ShowX(TextBox1, 2, 0, 1)
        TextBox2 = TextBox1
        TextBox2 = Calendar.ShowX(TextBox2, 2, 0, 1)
    If TextBox2 = TextBox1 Then TextBox2 = ""
    End If
End Sub

Private Sub TextBox2_MouseUp(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
    If Button = 2 Then
            TextBox2 = Calendar.ShowX(TextBox2, 2, 0, 1)
     End If
End Sub
voila ;)
 

Pièces jointes

  • exemple calendar OLDVERSION V 4.1.xlsm
    49.9 KB · Affichages: 15
Dernière édition:

patricktoulon

XLDnaute Barbatruc
re
hey !!! les gars
W 10 carte graphique NVIDIA GTX1650
drivers pris sur NVIDIA et y compris le gestionnaire

pas de - 5 ou int (..) ou je ne sais quoi qu'est ce
1711485984736.png

pour info
VB:
Private Function placementRange(Obj As Object)
    If Obj Is Nothing Then Exit Function
    Dim Z#, L1#, T1#, Hx#, Wx#, PtoPx#
    With ActiveWindow
        PtoPx = 1 / ((.ActivePane.PointsToScreenPixelsX(7200) - .ActivePane.PointsToScreenPixelsX(0)) / 7200)  'coeff point to pixel
        Z = (.Zoom / 100)
        L1 = (.ActivePane.PointsToScreenPixelsX((Obj.left)) * PtoPx) * Z     'placement partie mobile
        T1 = .ActivePane.PointsToScreenPixelsY((Obj.top)) * PtoPx * Z
    End With
    'option de placement :
    Wx = (Obj.Width / 2) * Z * Px
    Hx = (Obj.Height / 2) * Z * Py
    L1 = L1 + (Wx)
    T1 = T1 + (Hx)
    With Me: .left = L1: .top = T1: End With
End Function
et croyez moi j'en ai essayé plus d'un de pack drivers avant de trouver le bon
pas de chichi du pur et sur 🤣 🤣 🤣
regardez bien ce que propose le gestionnaire NVIDIA et le gestionnaire Window

Nvidia
demo.gif


windows
1711486675374.png


comme je suis myope comme une carpe je règle a 1600 par 900 mais en 1080p sur le gestionnaire NVIDIA
si je prends la même résolution par le gestionnaire windows donc toujours 1600 par 900

1711486839143.png


pigé ou je fait pipi par terre ;)
 
Dernière édition:

Nicolas JACQUIN

XLDnaute Occasionnel
Supporter XLD
re
hey !!! les gars
W 10 carte graphique NVIDIA GTX1650
drivers pris sur NVIDIA et y compris le gestionnaire

pas de - 5 ou int (..) ou je ne sais quoi qu'est ce
Regarde la pièce jointe 1193582
pour info
VB:
Private Function placementRange(Obj As Object)
    If Obj Is Nothing Then Exit Function
    Dim Z#, L1#, T1#, Hx#, Wx#, PtoPx#
    With ActiveWindow
        PtoPx = 1 / ((.ActivePane.PointsToScreenPixelsX(7200) - .ActivePane.PointsToScreenPixelsX(0)) / 7200)  'coeff point to pixel
        Z = (.Zoom / 100)
        L1 = (.ActivePane.PointsToScreenPixelsX((Obj.left)) * PtoPx) * Z     'placement partie mobile
        T1 = .ActivePane.PointsToScreenPixelsY((Obj.top)) * PtoPx * Z
    End With
    'option de placement :
    Wx = (Obj.Width / 2) * Z * Px
    Hx = (Obj.Height / 2) * Z * Py
    L1 = L1 + (Wx)
    T1 = T1 + (Hx)
    With Me: .left = L1: .top = T1: End With
End Function
et croyez moi j'en ai essayé plus d'un de pack drivers avant de trouver le bon
pas de chichi du pur et sur 🤣 🤣 🤣
regardez bien ce que propose le gestionnaire NVIDIA et le gestionnaire Window

Nvidia
Regarde la pièce jointe 1193583

windows
Regarde la pièce jointe 1193584

comme je suis myope comme une carpe je règle a 1600 par 900 mais en 1080p sur le gestionnaire NVIDIA
si je prends la même résolution par le gestionnaire windows donc toujours 1600 par 900

Regarde la pièce jointe 1193585

pigé ou je fait pipi par terre ;)
 

Nicolas JACQUIN

XLDnaute Occasionnel
Supporter XLD
Désolé Patrick je sais pas, fait pipi dans un coin ou ça crain pas trop :D;),
J'ai 3 écrans don 1 en résolution différente mais le problème est toujours identique.
Mais bon à la base c'était pas le sujet désolé, beau calendrier.
 

Pièces jointes

  • Capture d’écran 2024-03-26 220910.jpg
    Capture d’écran 2024-03-26 220910.jpg
    54.6 KB · Affichages: 7
  • Capture d’écran 2024-03-26 220931.jpg
    Capture d’écran 2024-03-26 220931.jpg
    58.1 KB · Affichages: 7

TooFatBoy

XLDnaute Barbatruc
et croyez moi j'en ai essayé plus d'un de pack drivers avant de trouver le bon
Ah ben voilà, maintenant au moins c'est clair, on sait pourquoi tu n'as pas la même chose que nous.

Moi j'ai simplement installé le dernier driver de ma CG, sans en chercher un qui aligne le calendrier où je veux. 😅



Mais bon à la base c'était pas le sujet
Arf. Bonne remarque.
 

Discussions similaires

Statistiques des forums

Discussions
312 803
Messages
2 092 258
Membres
105 318
dernier inscrit
alberic63