[Formule] RECHERCHEV (et les lignes du dessous)

  • Initiateur de la discussion Initiateur de la discussion TheLio
  • Date de début Date de début

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 !

TheLio

XLDnaute Accro
Bonjour tous, bonjour le forum,
Ca fait un bail, mais les journées sont longues et les nuits trop courtes pour trouver le temps de passer plus souvent vous faire un coucou.

J'ai du perdre un peu la main, je n'arrive plus à faire une recherche décalée... Je me perds entre les SOMMEPROD et autres LIGNES...
En résumé sur l'onglet "Récap Impression", j'aimerai retrouver des lignes se trouvant également en-dessous de ma recherche =SIERREUR(RECHERCHEV($B1;INDIRECT(B2&"!TABLO_SEM");2;0);"")

Si vous voulez bien m'éclairer, ... considérez-vous déjà comme remerciés 🙂
@++
Lio
 

Pièces jointes

Bonjour TheLio, heureux de te revoir 🙂

Avec du VBA ça paraît assez simple :
Code:
Option Compare Text 'la casse est ignorée

Private Sub Worksheet_Activate()
Dim lig&, c As Range
Application.ScreenUpdating = False
[C1:J2] = "" 'RAZ
Rows("3:" & Rows.Count).Delete 'RAZ
lig = 2
On Error Resume Next
With Sheets(CStr([B2]))
  [C1] = .[B5]: [H1] = .[H5]
  [C2:I2] = .[B6:H6].Value
  For Each c In .[A:A].SpecialCells(xlCellTypeConstants)
    If c = "Matin" Or c = "Après-Midi" Then
      lig = lig + 1
      Cells(lig, 3).Resize(, 7).Merge
      Cells(lig, 3).Resize(, 7).Font.Bold = True
      Cells(lig, 3).Resize(, 7).Interior.ColorIndex = IIf(c = "Matin", 6, 44)
      Cells(lig, 3) = c.Value
    ElseIf c = [B1] Then
1     If Application.CountA(c(1, 2).Resize(, 7)) Then
        lig = lig + 1
        Cells(lig, 3).Resize(, 7) = c(1, 2).Resize(, 7).Value
        If c(2) = "" Then Set c = c(2): GoTo 1
      End If
    End If
  Next
End With
Intersect([C:I], UsedRange).Borders.Weight = xlThin
End Sub

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, [B1:B2]) Is Nothing Then Worksheet_Activate
End Sub
A+
 

Pièces jointes

Dernière édition:
Hello job75,
Excellent comme d'habitude, je te remercie.
Je vais voir comment je peux adapter ceci.
Car je dois partir sur différentes formes d'affichages en vues d'impressions à différents formats (ce pourquoi, j'ai n'ai même pas osé me lancer dans un "Sub")
@toutbientôt
Lio
 
- 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

J
Réponses
3
Affichages
21 K
Janko
J
Retour