adapter filesearch pour execl 2007

janick

XLDnaute Occasionnel
Bonjour,

Je souhaiterais de l'aide pour modifier cette recherche qui ne fonctionne plus

Merci d'avance de l'aide que vous pourriez m'apporter


Sub Combox(combo, i) 'Chargement des combobox
Dim X%, Tblo(), A%

'--------------------- Factures - Devis - Listing Annuelle - BL -------------------------
With Application.FileSearch
.NewSearch
.LookIn = combo '"c:\save_devis_excel\Facture\"
.FileType = msoFileTypeOfficeFiles
If .Execute(msoSortByFileName) > 0 Then
X = .FoundFiles.Count
ReDim Tblo(1 To X)
For A = 1 To X
Tblo(A) = Split(.FoundFiles(A), "\") _
(UBound(Split(.FoundFiles(A), "\")))
Next
If i = 1 Then ComboBox1.List = Tblo
If i = 2 Then ComboBox2.List = Tblo
If i = 3 Then ComboBox3.List = Tblo
If i = 4 Then ComboBox4.List = Tblo
If i = 5 Then ComboBox5.List = Tblo
Erase Tblo
End If
End With
X = 0
End Sub
 

Staple1600

XLDnaute Barbatruc
Re : adapter filesearch pour execl 2007

Bonjour à tous

janick
Membre depuis 2005, et pourtant tu oublies de faire une recherche dans les archives du forum...:rolleyes:

extrait de la charte
Demandeur

1 – Un outil de recherche sur le forum permet de voir si la question a déjà été posée. Ne pas hésiter à l’utiliser. Lien vers le moteur de recherche

Ce sujet a déjà été traité maintes et maintes fois sur le forum. ;)
 
Dernière édition:

Roland_M

XLDnaute Barbatruc
Re : adapter filesearch pour execl 2007

bonjour,

Code:
Sub Combox(Combo, I) 'Chargement des combobox
Dim NbrFich%, Fichier$, Chemin$, Ext$
ReDim Tablo$(1 To 1)
Chemin = Combo: If Right(Chemin, 1) <> "\" Then Chemin = Chemin & "\"
Ext$ = "*" '<<< ici mettre l'extention sans le point !

'--------------------- Factures - Devis - Listing Annuelle - BL -------------------------

NbrFich = 0
Fichier = Dir(Chemin & "*." & Ext$) '"c:\save_devis_excel\Facture\"
While Fichier > ""
   NbrFich = NbrFich + 1: ReDim Preserve Tablo(1 To NbrFich)
   Tablo(NbrFich) = Fichier 'nom du fichier seul
  'Tablo(NbrFich) = Chemin & Fichier 'chemin+ nom
  'la date > FileDateTime(ChemFich & Fichier)
   Fichier = Dir() 'suite
Wend
If NbrFich = 0 Then
   MsgBox "aucun fichier !?", vbInformation, ""
Else
  Select Case I
    Case 1: ComboBox1.List = Tablo()
    Case 2: ComboBox2.List = Tablo()
    Case 3: ComboBox3.List = Tablo()
    Case 4: ComboBox4.List = Tablo()
    Case 5: ComboBox5.List = Tablo()
  End Select
End If
Erase Tablo
  
 'Dim A%, X%, Tablo()
 'With Application.FileSearch
 '.NewSearch
 '.LookIn = combo '"c:\save_devis_excel\Facture\"
 '.FileType = msoFileTypeOfficeFiles
 'If .Execute(msoSortByFileName) > 0 Then
 'X = .FoundFiles.Count
 'ReDim Tablo(1 To X)
 'For A = 1 To X
 'Tablo(A) = Split(.FoundFiles(A), "\")(UBound(Split(.FoundFiles(A), "\")))
 'Next
 'If i = 1 Then ComboBox1.List = Tablo()
 'If i = 2 Then ComboBox2.List = Tablo()
 'If i = 3 Then ComboBox3.List = Tablo()
 'If i = 4 Then ComboBox4.List = Tablo()
 'If i = 5 Then ComboBox5.List = Tablo()
 'Erase Tablo
 'End If
 'End With
 'X = 0
 
End Sub
 
Dernière édition:

Roland_M

XLDnaute Barbatruc
Re : adapter filesearch pour execl 2007

re

plus simple sans tableau:

Code:
Sub Combox(Combo, I) 'Chargement des combobox
Dim Fichier$, Chemin$, Ext$
Ext$ = "*" '<<< ici mettre l'extention sans le point !
'-------------- Factures - Devis - Listing Annuelle - BL ------------
Chemin = Combo: If Right(Chemin, 1) <> "\" Then Chemin = Chemin & "\"
Select Case I
  Case 1: ComboBox1.Clear
  Case 2: ComboBox2.Clear
  Case 3: ComboBox3.Clear
  Case 4: ComboBox4.Clear
  Case 5: ComboBox5.Clear
End Select
Fichier = Dir(Chemin & "*." & Ext) '"c:\save_devis_excel\Facture\"
While Fichier > ""
  Select Case I
    Case 1: ComboBox1.AddItem Fichier
    Case 2: ComboBox2.AddItem Fichier
    Case 3: ComboBox2.AddItem Fichier
    Case 4: ComboBox2.AddItem Fichier
    Case 5: ComboBox2.AddItem Fichier
    'ou ComboBox1.AddItem Chemin & Fichier 'chemin+ nom
  End Select
  Fichier = Dir() 'suite
Wend
End Sub


et encore plus simple si tu passer le combox as control
on aurait pas besoin de tester les 1/2/3...

Code:
'tu initialises dans ton userf comme ceci
Private Sub UserForm_Initialize()
Chemin$ = ""
Ext$ = "*"
Combox ComboBox1, Chemin, Ext
End Sub

'la procédure
Sub Combox(Combo As Control, Chemin As String, Ext As String)
Dim Fichier$
If Right(Chemin, 1) <> "\" Then Chemin = Chemin & "\"
Combo.Clear
Fichier = Dir("*." & Ext)
While Fichier > "": Combo.AddItem Fichier: Fichier = Dir(): Wend
End Sub
 
Dernière édition:

Discussions similaires

  • Question
Microsoft 365 ListBox TextBox
Réponses
5
Affichages
2 K

Statistiques des forums

Discussions
312 104
Messages
2 085 345
Membres
102 868
dernier inscrit
JJV