Microsoft 365 Code si date introuvable

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 !

Marvin57

XLDnaute Occasionnel
Bonjour à tout le monde,

dans le fichier ci-joint, je clique sur le bouton de l'onglet DEPART et il affiche le UserForm1.

Je peux alors choisir une date ou semaine et il m'affichera les données de cette semaine demandée.

Ma question;

Comment modifier ce code afin qu'il ne m'affiche rien dans les textbox si la période choisie n'existe pas sur l'onglet TEST ?

Merci d'avance à vous pour votre aide.

Cordialement,
Marvin57
 

Pièces jointes

Bonjour Marvin57

Ca semble être déjà le cas 🤔
Regarde la pièce jointe 1186054
Ou alors je n'ai pas compris la question

A+
Bonjour BrunoM45,

Merci pour le retour.

Non cela ne fonctionne pas comme je souhaiterai l'avoir.

Si au départ je choisi une date ou semaine éloignée, cela fonctionne. Mais si je change plusieurs fois les choix de semaines ou dates il ne fonctionne pas.

C'est à dire je choisi par ex. la semaine 6 de l'année 2024, alors oui il n'affiche rien dans les textbox.
Maintenant si je reviens sur une semaine existante il me remplit bien les textbox. Et si je reviens sur une semaine éloignée il me laisse les inscriptions de la dernière semaine choisie, qui est existante.
 
bonjour,
Je pense que c'est quant tu change de semaine sans refermer ton user, alors
Ajoute ceci pour remettre à zéro tes textbox
Private Sub TextBox84_Change()
For n = 1 To 7
Me.Controls("TextBox" & n) = ""
Next
Bonjour sousou,

Merci pour ton aide. Je viens de le placer comme ceci

VB:
Private Sub CommandButton79_Click()
  Dim i%, j%, Dl%
  Dim Ws As Worksheet
  Set Ws = Sheets("TEST")
 
  Dl = Ws.Range("B" & Rows.Count).End(xlUp).Row
    
    For i = 5 To 164 Step 14
      For j = 3 To 9
    
    For n = 1 To 7
    Me.Controls("TextBox" & n) = ""
    Next
    
          If Ws.Cells(i, j).Value = CDate(Me.TextBox84.Value) Then
          Me.TextBox85.Value = Ws.Cells(i + 0, j + 6).Value
      
    
          Me.TextBox1.Value = Ws.Cells(i + 1, j).Value
          Me.TextBox2.Value = Ws.Cells(i + 1, j + 1).Value
          Me.TextBox3.Value = Ws.Cells(i + 1, j + 2).Value
          Me.TextBox4.Value = Ws.Cells(i + 1, j + 3).Value
          Me.TextBox5.Value = Ws.Cells(i + 1, j + 4).Value
          Me.TextBox6.Value = Ws.Cells(i + 1, j + 5).Value
          Me.TextBox7.Value = Ws.Cells(i + 1, j + 6).Value

          Exit Sub
        End If
      Next j
    Next i
    
End Sub

Cela fonctionne. Mais est-ce que j'ai bien placé le code ?
est-ce correct.
 
- 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
11
Affichages
414
Réponses
2
Affichages
438
Réponses
3
Affichages
644
Réponses
22
Affichages
936
Réponses
4
Affichages
478
Réponses
93
Affichages
4 K
Réponses
4
Affichages
638
Réponses
5
Affichages
455
Réponses
12
Affichages
702
Réponses
8
Affichages
660
  • Question Question
Microsoft 365 Code listbox
Réponses
4
Affichages
538
Réponses
10
Affichages
432
Réponses
6
Affichages
519
Retour