Modification d'une macro de chargement sous condition dans une listview

Meloman

XLDnaute Occasionnel
bonjour à tous


j'utilise cette macro qui me permet de recherche sur plusieur feuillle et rapatrier les donnée dans une listview sous condition d'une partis de nom de ma feuille de clacule

exemple mes feuille de calcule porte ces nom AIR1_Févr_12 AIR2_Févr_13 .......

je souhaiterais que ma macro parcours mes feuilles et recherche les feuille comportant Févr et le copie dans ma listview les lignes trouver.

j'utilise cette macro

Code:
Sub MOIS()
With UserForm1.ListView4
For Each sht In Sheets




 If Left(sht.Name, 9) = "Févr" Then                '<======probleme c'est ici




For i = 4 To sht.Range("A65536").End(xlUp).Row
.ListItems.Add , , "X"
Ind = UserForm1.ListView4.ListItems.Count
.ListItems(Ind).ListSubItems.Add , , sht.Cells(i, 1)
.ListItems(Ind).ListSubItems.Add , , sht.Cells(i, 2)
.ListItems(Ind).ListSubItems.Add , , sht.Cells(i, 3)
.ListItems(Ind).ListSubItems.Add , , sht.Cells(i, 4)
.ListItems(Ind).ListSubItems.Add , , sht.Cells(i, 5)
.ListItems(Ind).ListSubItems.Add , , sht.Cells(i, 6)
.ListItems(Ind).ListSubItems.Add , , ""
.ListItems(Ind).ListSubItems.Add , , ""
.ListItems(Ind).ListSubItems.Add , , ""
On Error Resume Next
            UserForm1.CalculEvo
       Next i
          End If

Next sht
End With


je pense que le soucis viens de là car je c'est comment rechercher par le debut d'un nom par la fin mais pas au milieux ma question est donc comment faire pour chercher les feuille dont le les lettre du milieux sont Févr
Code:
If Left(sht.Name, 9) = "Févr" Then


merci d'avance de votre aide
 

ChTi160

XLDnaute Barbatruc
Re : Modification d'une macro de chargement sous condition dans une listview

Bonjour Meloman
Bonjour le Forum

Peut être en faisant ainsi dans ta boucle

Code:
If   sht.Name  Like  "*Févr*"  Then

Voir fonction "LIKE"

Bonne fin de journée
Jean Marie
 

Meloman

XLDnaute Occasionnel
Re : Modification d'une macro de chargement sous condition dans une listview

Bonjour Tchti et merci de ton aide

alors ta solution fonctionne donc bien entendus j'ai souhaiter de l'adapter car le mois peut changer et c'est un contrôleur qui va me le dictée donc j'ai fais comme ceci

X2 est une combobox avec dedan les Mois Janv Févr Mars .......ect

Code:
Dim NFeuil As String
NDate = Left(UserForm1.X2, 4)
For Each sht In Sheets
 If sht.Name Like "*NDate*" Then

mais la rien ne s'affiche comment puis je faire svp
 

ChTi160

XLDnaute Barbatruc
Re : Modification d'une macro de chargement sous condition dans une listview

Bonjour Meloman
Bonjour le Forum

je vois que tu indiques que le ComboBox X2 (ce genre d’appellation dans un code n'est pas très explicite,il vaut mieux le nommer par exemple CBb_Mois)Contient la liste des Mois
X2 est un combobox avec dedans les Mois "Janv,Févr,Mars .......ect
il n'y a donc pas à faire de découpage (fonction Left)
Code:
 NDate =Left(Userform1.X2,4) 'ici petite erreur de variable NDate au lieu de NFeuil
il te suffit de récupérer par exemple le Texte du Combobox
ce qui donne

Code:
NFeuil=Userform1.X2.Text
'Il y a d'autre façons de récupérer le texte d'un Combobox

Ensuite tu fais la Boucle avec la variable "*" & NFeuil & "*" (comme tu l'as fait)
Bonne Journée
Jean Marie
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 294
Messages
2 086 941
Membres
103 404
dernier inscrit
sultan87