help!!!

kettou

XLDnaute Junior
Bonjour à tous,
voila ca fait quelques temps que je crée un outil de tableau de bord sous excel vba, il fonctionne assez bien mais il reste encore kelke imperfeciant que je suis entrain de régler en ce moment, cependant il y a un petit soucis que je n'arrive pas à régler au niveau du menu général qui est dans une feuille excel, voila le processus est le suivant je selectionne une date dans une liste déroulante ensuite je selectionne une case option parmi trois pour que ca m affiche les noms de fichier dans une liste box ce dernier se pointe dans un repertoire ca marche nickel jusqu'a maintenant . le soucis c'est quand je veux changer de case option je dois choisir une nouvelle fois une date dans la liste déroulante pour actualiser la liste box. le probléme donc comment eviter cette étape?.
mon code est le suivant est le suivant:


Private Sub Worksheet_Change(ByVal Target As Range)
Feuil1.List_ADV.Clear

If Target.Address <> "$F$7" Then Exit Sub
If Target.Value = "" Then Exit Sub
If Option_region.Value = True Then

Dim F, fichier
Dim indice As String
Dim mois As String
Dim LongFilename As String

With Application.FileSearch
.NewSearch
.LookIn = "Y:\01_commun\Suivi ADV\Region"
.Execute
On Error Resume Next
For Each F In .FoundFiles
mois = Mid(Range("F7").Value, 4, 2)

indice = Mid(F, Len(F) - 5, 2)

If mois = indice Then
fichier = Mid(F, 30, Len(F) - 4)
'Debug.Print fichier
fichier = Left(fichier, Len(fichier) - 4)
Debug.Print fichier
Sheets("Feuil1").List_ADV.AddItem fichier
'Debug.Print fichier
End If
Next F
End With
ThisWorkbook.Worksheets(1).Select

ElseIf Option_DVRS.Value = True Then

With Application.FileSearch
.NewSearch
.LookIn = "Y:\01_commun\Suivi ADV\DVRS"
.Execute
On Error Resume Next
For Each F In .FoundFiles
mois = Mid(Range("F7").Value, 4, 2)

indice = Mid(F, Len(F) - 5, 2)

If mois = indice Then
fichier = Mid(F, 28, Len(F) - 4)
Debug.Print fichier
fichier = Left(fichier, Len(fichier) - 4)
Debug.Print fichier
Sheets("Feuil1").List_ADV.AddItem fichier
Debug.Print fichier
End If
Next F
End With
ThisWorkbook.Worksheets(1).Select

Else

With Application.FileSearch
.NewSearch
.LookIn = "Y:\01_commun\Suivi ADV\Equipes ADV"
.Execute
On Error Resume Next
For Each F In .FoundFiles
mois = Mid(Range("F7").Value, 4, 2)
indice = Mid(F, Len(F) - 5, 2)

If mois = indice Then
fichier = Mid(F, 35, Len(F) - 4)
Debug.Print fichier
fichier = Left(fichier, Len(fichier) - 4)
'Debug.Print fichier
Sheets("Feuil1").List_ADV.AddItem fichier
Debug.Print fichier
End If
Next F
End With
ThisWorkbook.Worksheets(1).Select

End If


End Sub
j'éspere que qq à une solution à mon probléme.
merci

Amicalement
 
Dernière édition:

Discussions similaires