Salut greenline4, le fil
Si tu peux utiliser VBA teste ce petit bout de code que tu pourras améliorer...
Dans Feuil1 tu mets ce code
Option Explicit
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim T, bas As Integer, haut As Integer, NbJours As Range, e As Range
Set NbJours = Worksheets("Donnees").Range("D2:D10")
If Not Intersect(Target, Range("A4:A7")) Is Nothing Then
If InStr(1, Target, "@") > 0 Then
T = Split(Target, "@", , vbTextCompare)
bas = SearchIsNumber(CStr(T(0)))
haut = SearchIsNumber(CStr(T(1)))
Else
bas = SearchIsNumber(Target.Value)
haut = 0
End If
For Each e In NbJours
If haut <> 0 Then
If e > bas And e < haut Then
e.EntireRow.Hidden = True
Else
e.EntireRow.Hidden = False
End If
Else
If e > bas Then
e.EntireRow.Hidden = True
Else
e.EntireRow.Hidden = False
End If
End If
Next
End If
End Sub
et dans un module celui-là
Option Explicit
Function SearchIsNumber(strSearch As String) As Integer
Dim j As Integer, dblNombre As Double, dblTempDate As Double
For j = 1 To Len(strSearch)
If IsNumeric(Mid(strSearch, j, 1)) Then
dblNombre = Val(Mid(strSearch, j, Len(strSearch) - j + 1))
dblTempDate = dblNombre
j = j + Len(Str(dblNombre)) - 1
End If
Next
End Function
Bon courage...