Se postionner sur la date et le mois choisi avec dtpicker

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

aubelix

XLDnaute Impliqué
Bonjour à tout le Forum.
Je continue dans mon projet et j'arrive aux améliorations.
Bon signe grâce à tous les bénévoles, il sera bientôt abouti, un grand merci à tous.

Mon problème est le suivant :
- Je lance un USF pour choisir un nom, un mois et tout se passe bien.
La feuille du mois choisi est sélectionnée, et positionnement sur le nom...
(Est-il possible de changer de mois sans avoir à cliquer sur le bouton >> ?)

J'aurais aimé affiner : avec DTpicker ou mieux un calendrier ou autre, pour que cela
fonctionne sur toute les machines, même ne disposant du calendrier, ou dtpicker pouvoir :
- Sélectionner un Nom
- Un date précise (Mois + Jour)
et me rendre directement su le nom choisi et à la colonne de la date (Mois et Jour)
Chaque feuille est le nom du mois, et les dates sont détaillées sous le format des
2 feuilles en exemple.

Par avance merci pour aide.
Cordialement.
 

Pièces jointes

Re : Se postionner sur la date et le mois choisi avec dtpicker

Bonjour

Une première réponse
Comment puis-je en sélectionnant la date sur "DTPicker1" me rendre sur la Feuille "mois" et colonne "date"
et me positionner sur le nom choisi dans la liste ?

Code à tester

Code:
Private Sub DTPicker1_Change()
Dim data1 As String
Dim dl1 As Long ' dernière ligne

Select Case Month(DTPicker1.Value)
Case 1
    ComboBox2.Value = "Janvier"
Case 2
    ComboBox2.Value = "Fevrier"
Case 11
    ComboBox2.Value = "Novembre"
End Select

Sheets(ComboBox2.Value).Select
dl1 = Sheets(ComboBox2.Value).Range("b65536").End(xlUp).Row
lig = chercheligne(ComboBox2.Value, ComboBox1.Value, "B4", "B" & dl1)

If lig = 0 Then lig = 3
data1 = colonneLCenAX(CLng(Day(DTPicker1.Value)) + 3) & lig
Range(data1).Select
End Sub
'---------------------------------------------------------------------------------------
' Procedure : colonneLCenAX
' DateTime  : 09/01/2007 17:53
' Author    : jp14
' Utilisation   :transforme une valeur numérique en alpha
'colonneLCenAX(colonnen As Long)
'---------------------------------------------------------------------------------------
'
Function colonneLCenAX(colonnen As Long)
Dim ifo As Integer

If colonnen < (26 + 1) Then
    colonneLCenAX = Chr(colonnen + 64)
Else
    For ifo = 1 To 11
        If colonnen > (ifo * 26) And colonnen < ((ifo + 1) * 26) + 1 Then colonneLCenAX = Chr(64 + ifo) & Chr(colonnen + 64 - (ifo * 26))
    Next ifo
End If
End Function

'---------------------------------------------------------------------------------------
' Procedure : chercheligne
' DateTime  : 22/03/2007 12:27
' Author    : jp14
' Utilisation   :Recherche simple avec Find
'Sheets().Range(colonne1a & "65536").End(xlUp).Row
'lig = chercheligne("Feuil1", "Valeur", "A1", "A" & dl1 )
'---------------------------------------------------------------------------------------
'
Function chercheligne(£feuille As String, £valeur As String, £col1d As String, £col1f As String)
Dim cel As Range
Set cel = Sheets(£feuille).Range(£col1d & ":" & £col1f).Find(What:=£valeur, LookIn:=xlValues, SearchOrder:=xlByRows)


If cel Is Nothing Then
    chercheligne = 0
Else
    chercheligne = cel.Row
End If
End Function

JP
 
Dernière édition:
Re : Se postionner sur la date et le mois choisi avec dtpicker

Bonjour JP14 et le Forum.
Merci pour ta réponse.

Cela fonctionne bien, mais je me rends compte que j'ai fait une erreur dans ma question :
A savoir que l'on sélectionne la date avec le DTPicker c'est OK, mais dès que je séléctionne
un nom, j'aimerais rester sur la colonne de la date chosie et descendre sur la ligne du nom.
Exemple: 16 Novembre, Nom EEEE : se positionner sur "S12"

Merci pour ton aide.
Cordialement.
 
Re : Se postionner sur la date et le mois choisi avec dtpicker

Bonjour

Il suffit de rajouter dans le code du bouton et supprimer cette partie dans le code pour DtPicker

Code:
..........................

Sheets(ComboBox2.Value).Select
data1 = colonneLCenAX(CLng(Day(DTPicker1.Value)) + 3) & 3
Range(data1).Select

dl1 = Sheets(ComboBox2.Value).Range("b65536").End(xlUp).Row

lig = chercheligne(ComboBox2.Value, ComboBox1.Value, "B4", "B" & dl1)

If lig = 0 Then lig = 3
data1 = colonneLCenAX(CLng(Day(DTPicker1.Value)) + 3) & lig
Range(data1).Select


................................

Je ne peux envoyer le fichier car chaque fois que j'enregistre j'ai une erreur.

JP
 
Dernière édition:
Re : Se postionner sur la date et le mois choisi avec dtpicker

Bonjour

Il suffit de rajouter dans le code du bouton et supprimer cette partie dans le code pour DtPicker

Code:
..........................

Sheets(ComboBox2.Value).Select
data1 = colonneLCenAX(CLng(Day(DTPicker1.Value)) + 3) & 3
Range(data1).Select

dl1 = Sheets(ComboBox2.Value).Range("b65536").End(xlUp).Row

lig = chercheligne(ComboBox2.Value, ComboBox1.Value, "B4", "B" & dl1)

If lig = 0 Then lig = 3
data1 = colonneLCenAX(CLng(Day(DTPicker1.Value)) + 3) & lig
Range(data1).Select


................................

Je ne peux envoyer le fichier car chaque fois que j'enregistre j'ai une erreur.

JP



Bonsoir JP14.

Après modifications, il y'a un problème la date sélectionnée dans la feuille
est à J+1 (Sélectionnée dans DTPicker 02 Janvier 2008 >> se positionne sur 03 Janvier ???)
Si tu pouvais essayer de m'nvoyer ton fichier, ce seraiut plus simple pour vérifier mes erreurs

Cordialement.
 

Pièces jointes

Re : Se postionner sur la date et le mois choisi avec dtpicker

Bonjour

L'erreur provient du code ci dessous

Code:
Range(data1).Select



    Unload Me ' on indique que on sort de l'usf, cette opération ne sera éffective qu'après la fin de la procédure

    ActiveCell.Offset(0, 1).Range("A1").Select ' cette ligne décale d'une colonne a supprimer

    GoTo Fin ' à eviter il faut écrire exit sub
finerreur:        'Renvoi ici si la recherche est non trouvée
    MsgBox "Nom invalide", vbInformation, "Recherche invalide"    'Message si rien n'ai trouvé
Fin:

JP
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
0
Affichages
475
Réponses
0
Affichages
332
Retour