[RESOLU]Rechercher cellule contenant une date dans classeur

hypo78

XLDnaute Impliqué
Bonjour à tous,
J'ai un classeur avec 56 feuilles (56 semaines).
Sur chaque feuille on trouve sur la plage (A16:A30), les jours de la semaine.

A partir d'une InputBox où je saisi une date, j'aimerai arriver directement sur la feuille et sur la cellule directement à droite de la cellule contenant cette date.

Les dates contenues dans mes cellules sont le produit d'une formule du type =A1+1 (a1 étant une date).

Je joins un petit exemple.
 

Pièces jointes

  • Recherche_date.zip
    12.8 KB · Affichages: 42
  • Recherche_date.zip
    12.8 KB · Affichages: 38
  • Recherche_date.zip
    12.8 KB · Affichages: 38
Dernière édition:

pierrejean

XLDnaute Barbatruc
Re : Rechercher cellule contenant une date dans classeur

Bonjour hypo78

A tester

VB:
Sub test()
Dim X As Date
Dim Cel As Range
X = CDate(InputBox("date"))
For Each sh In Sheets
  For n = 16 To sh.Range("A65536").End(xlUp).Row
    If sh.Range("A" & n).Value = X Then
       sh.Select
       sh.Range("D" & n).Select
    End If
  Next n
Next
End Sub
 

job75

XLDnaute Barbatruc
Re : Rechercher cellule contenant une date dans classeur

Bonjour hypo78, salut pierrejean,

Dans le même genre, avec un contrôle de l'entrée dans la box :

Code:
Sub SelecDate()
Dim dat As Variant, w As Worksheet, cel As Range
1 dat = InputBox("Entrez une date :", "Recherche date")
If dat = "" Then Exit Sub
If Not IsDate(dat) Then GoTo 1
dat = CDate(dat)
For Each w In Worksheets
  For Each cel In w.[A16:A30]
    If cel = dat Then
      Application.Goto cel.Offset(, 1)
      Exit Sub
    End If
  Next
Next
MsgBox "Date introuvable..."
End Sub
A+
 

hypo78

XLDnaute Impliqué
Re : Rechercher cellule contenant une date dans classeur

Re,

et si mes feuilles sont masquées?
Peut-on faire une recherche dessus et bien entendu faire apparaitre la feuille contenant la date (du genre w.visible = true non?)

merci d'avance
 

job75

XLDnaute Barbatruc
Re : Rechercher cellule contenant une date dans classeur

Re,

et si mes feuilles sont masquées?
Peut-on faire une recherche dessus et bien entendu faire apparaitre la feuille contenant la date (du genre w.visible = true non?)

Vous avez donné la réponse vous-même, il suffit d'afficher la feuille où la date est trouvée :

Code:
Sub SelecDate()
Dim dat As Variant, w As Worksheet, cel As Range
1 dat = InputBox("Entrez une date :", "Recherche date")
If dat = "" Then Exit Sub
If Not IsDate(dat) Then GoTo 1
dat = CDate(dat)
For Each w In Worksheets
  For Each cel In w.[A16:A30]
    If cel = dat Then
      w.Visible = True
      Application.Goto cel.Offset(, 1)
      Exit Sub
    End If
  Next
Next
MsgBox "Date introuvable..."
End Sub

A+
 

hypo78

XLDnaute Impliqué
Re : Rechercher cellule contenant une date dans classeur

dernière chose,
après avoir saisi ce que je voulais dans la feuille concernée, je voudrais qu'elle se masque au moment de l'enregistrement.
Je pense que je dois aller dans vba / workbook / before close
mais le code....
Code:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim w As Worksheet
For Each w In Worksheets
w.Visible = False
Worksheets("menu").Visible = True
Next




End Sub

çà fonctionne mais si il n'y a pas de feuille à masquer çà plante.... faudrait pas rajouter un If.....

Merci
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 047
Messages
2 084 857
Membres
102 688
dernier inscrit
Biquet78