Problème de RECHERCHEV avec des dates

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 !

schreckdebase

XLDnaute Junior
Bonsoir,

Je me demande si Excel a la possibilité de faire une RECHERCHEV avec un mois comme critère de recherche, et une date en valeur cible...

Le plus simple est de voir le fichier en pièce jointe je pense... 😀

Merci pour vos lumières.
 

Pièces jointes

Re : Problème de RECHERCHEV avec des dates

Bonjour,

Une tentative avec une formule matricielle :

en B37 :

Code:
=SI(SOMME((TEXTE(Incidents!$A$2:$A$14;"mmmm")=TEXTE(B4;"mmmm"))*1)=0;"";INDEX(Incidents!$A$2:$A$14;EQUIV(VRAI;TEXTE(Incidents!$A$2:$A$14;"mmmm")=TEXTE(B4;"mmmm");0)))

Formule matricielle à valider par CTRL + MAJ + ENTREE

En B38, même formule en adaptant les références de INDEX : on remplace la colonne A par la colonne C

Pour la ligne 39, pas trop compris ce que tu voulais exactement.

Je te laisse tester

@+
 
Re : Problème de RECHERCHEV avec des dates

Tibo, JCGL.

Merci à tous les deux pour vos propositions. Tibo étant le premier à avoir répondu, j'ai continué sur la lancée de son fichier. Ta solution est également intéressante JCGL.

Je les décortiquerai un peu plus tard hehe... 🙂

J'ai donc modifié le fichier avec explication de ce que je voudrais. Si vous voyez une solution, je suis également preneur.

Merci encore pour votre aide ! 😎
 

Pièces jointes

Re : Problème de RECHERCHEV avec des dates

re,

Pour la MFC, je te propose cette formule :

Code:
=NB.SI($B$39:$M$39;B5+1)+NB.SI($B$39:$M$39;B5+2)+NB.SI($B$39:$M$39;B5+3)+NB.SI($B$39:$M$39;B5-1)+NB.SI($B$39:$M$39;B5-2)+NB.SI($B$39:$M$39;B5-3)

pour la couleur bleue

et

Code:
=ET(B5<>"";NB.SI($B$39:$M$39;B5))

pour la couleur mauve


Souci, tu es sous Excel 2003 et il y avait déjà 2 MFC. Il va falloir faire des choix.

Je te laisse tester

@+
 
Re : Problème de RECHERCHEV avec des dates

Bonjour à tous,

Avec le code çi-dessous, on peut arriver à résoudre le problème de cette mise en forme (non testé pour d'autres cas)... Voir le fichier attaché...
Code:
Private Sub Worksheet_Activate()
Dim cel As Range, I As Integer, J As Integer, MyPlage As Range
Application.ScreenUpdating = False
For I = 2 To 12
Set MyPlage = Worksheets("2010").Range(Cells(5, I), Cells(35, I + 1))
  For Each cel In MyPlage
    If cel.Value = Cells(39, I).Value Then cel.Interior.ColorIndex = 39
    For J = 1 To 3
        If Cells(cel.Row - J, cel.Column) = Cells(39, I) - J Then _
                Cells(cel.Row - J, cel.Column).Interior.ColorIndex = 37
        If Cells(cel.Row + J, cel.Column) = Cells(39, I) + J Then _
                Cells(cel.Row + J, cel.Column).Interior.ColorIndex = 37
        If Cells(cel.Row - J + 1, cel.Column + 1) = Cells(39, I) - J Then _
                Cells(cel.Row - J + 1, cel.Column + 1).Interior.ColorIndex = 37
        If Cells(cel.Row + J - 1, cel.Column + 1) = Cells(39, I) + J Then _
                Cells(cel.Row + J - 1, cel.Column + 1).Interior.ColorIndex = 37
    Next J
  Next cel
Next I
Application.ScreenUpdating = True
End Sub
Le code est exécutable en activant la feuille "2010"...

Cordialement
 

Pièces jointes

Re : Problème de RECHERCHEV avec des dates

Bonjour à tous,

Après quelques essais du code sur d'autres cas de figure, il a donné des erreurs... Des rectifications ont été porté sur le code (qu'on espère satisfaisants) pour améliorer son exécution sans erreurs, et le code se présente comme suit:
Code:
Private Sub Worksheet_Activate()
Dim cel As Range, I As Integer, J As Integer, K As Integer, MyPlage As Range
Application.ScreenUpdating = False
Range("B5:M35").Interior.ColorIndex = xlNone
For I = 2 To 12
Set MyPlage = Worksheets("2010").Range(Cells(5, I), Cells(35, I + 1))
  For Each cel In MyPlage
    If cel = Cells(39, I) Then cel.Interior.ColorIndex = 39
    For J = 1 To 3
            Rng1 = Cells(39, I) - J
            Rng2 = Cells(39, I) + J
      If cel = Rng1 Or cel = Rng2 Then cel.Interior.ColorIndex = 37
      For K = 0 To 1
        If Cells(cel.Row - J + K, cel.Column + K) = Rng1 Then _
                Cells(cel.Row - J + K, cel.Column + K).Interior.ColorIndex = 37
        If Cells(cel.Row + J - K, cel.Column - K) = Rng2 Then _
                Cells(cel.Row + J - K, cel.Column - K).Interior.ColorIndex = 37
      Next K
    Next J
  Next cel
Next I
Application.ScreenUpdating = True
End Sub
Cordialement
 
- 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
12
Affichages
296
Réponses
13
Affichages
517
Retour