Bonjour à tous,
je ne suis pas un expert en VBA, je dirais même un débutant. J'ai réussi à faire quelques trucs simples mais là j'ai besoin d'aide.
J'ai créé dans VBAProject une commande qui recherche des éléments selon des critères de date, et lorsqu'il en trouve-un, la boite de dialogue apparait et de de l'info sur l'élément trouvé. Le problème c'est que je dois appuyer sur "ok" autant de fois que ma commande a trouvé une valeur. Donc si j'ai 10 éléments qui correspondent à ma recherche, je dois peser 10 fois sur OK pour sortir de là.
Pour faire une histoire courte je dois faire ressortir les ponts qui doivent être inspectés immédiatement pour les dates échues et un autre message pour les ponts qui doivent être inspectés d'ici les 15 prochains jours. Mon problème est que si j'ai 10 ponts, je devrai appuyer 10 fois pour sortir enfin de là.
Serait-il possible que dans 1 seule boite de message (en fait une boite contenant la liste des ponts échus, et 1 boite pour la liste des ponts à échéance dans les 15 prochains jours), tous les numéros de ponts " & valeur & " que je désire faire ressortir soient listés un en dessous de l'autre dans la boite de message au lieu qu'ils le soient à l'unité?
voici ma... (je ne sais même pas comment appeler cela... commande? macro? instructions?) ma série de lignes.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 Private Sub Workbook_Open() 'pour avertir que des observations sont passées dates et dûes Dim DATEDELAPROCHAINEOBSERVATION As Range For Each DATEDELAPROCHAINEOBSERVATION In ActiveSheet.Range("DATE_DE_LA_PROCHAINE_OBSERVATION") valeur = Cells(DATEDELAPROCHAINEOBSERVATION.Row, 1) If DATEDELAPROCHAINEOBSERVATION < Date And Not DATEDELAPROCHAINEOBSERVATION = "" Then MsgBox "Le pont " & valeur & " doit faire l'objet d'une inspection d'observation dans les plus bref délais", vbCritical, "délais d'inspection dépassé" Else End If If DATEDELAPROCHAINEOBSERVATION >= Date And DATEDELAPROCHAINEOBSERVATION < Date + 16 Then MsgBox "Le pont " & valeur & " doit faire l'objet d'une inspection d'observation d'ici les 15 prochains jours", vbExclamation, "l'inspection d'observation est dûe pour ce mois-ci" Else End If Next End Sub
merci de votre aide.
Partager