lister des fichiers en fontion état cellules

  • Initiateur de la discussion Initiateur de la discussion gagletor
  • 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 !

G

gagletor

Guest
Bonjour à tous,

Je bloque sur la création d'une macro.

J'ai des feuilles excel dans un dossier, qui servent de cartes de contrôles dans mon entreprise.
Lorsqu'un outils de fabrication est défectueux, je met dans le cellule M1 'Outil usé'.

Toutes ces cartes sont gérées par un moteur de recherche que j'ai fais sous excel, grâce auquel je peux faire la recherche d'uine carte spécifique et l'ouvrir à partir d'une listbox.

Maintenant je voudrais que lors d'un appuie sur un bouton de mon moteur de recherche, excel scan tous les fichiers de mon répertoire sans les ouvrirs, et me mette dans une listbox les feuilles dont la cellule M1 est noté 'Outil usé'.

J'espère que mes explications sont assez clair, sinon je peux envoyer mon fichier si besoin.

Merci de votre aide
 
Bonjour Hervé, bonjour à tous,

hervé merci de te pencher sur mon problème..

Il n'y a qu'une seule feuille où figure la donnée, il s'agit de la feuil1 cellule M1

Merci encore

A bientôt
 
bonjour gagletor

désolé pour la réponse tardive :unsure:

voici ce que fait ce code :

-scanne les fichiers du répertoire ou se trouve le fichier de base.
-stock dans un tableau variant une formule du type :='C:\\\\\\\\Aherve\\\\\\\\test\\\\\\\\[Classeur6.xls]Feuil1'!M1 en colonne 1 du tableau
- stock en colonne 2 le nom du fichier scanné
- crée une feuille
- copie dans la nouvelle feuille le tableau
- scanne la colonne 1 de la feuille
- repère les 'Outil usé'
- renvoi dans une listbox les noms des fichiers.
- supprime la feuille


voici ce que ne fait pas ce code :

- le café
- la blanquette de veau
- faire fortune au loto
- etc...


Private Sub CommandButton1_Click()
'd'apres un code de MichelXLD page WIKI de Excel-downloads
Dim chemin As String, rep As String, fichier As String
Dim tablo()
Dim x As Integer
Dim c As Range

Application.ScreenUpdating =
False
Application.DisplayAlerts =
False


chemin = ActiveWorkbook.Path & '\\\\\\\\'
'a adapter
rep = Dir(chemin)

While Not rep = ''
       
If Not rep = ThisWorkbook.Name Then
                x = x + 1
               
ReDim Preserve tablo(1 To 2, 1 To x)
                fichier = chemin & '[' & rep & ']'
                tablo(1, x) = '='' & fichier & 'Feuil1'!M1'
                tablo(2, x) = rep
       
End If
        rep = Dir
Wend

With Sheets.Add
        .Range('A1').Resize(UBound(tablo, 2),
UBound(tablo, 1)) = Application.Transpose(tablo)
       
For Each c In .Range('a1:a' & .Range('a65536').End(xlUp).Row)
               
If c = 'Outil usé' Then
                        ListBox1.AddItem c.Offset(0, 1)
               
End If
       
Next c
        .Delete
End With
Application.ScreenUpdating =
True
Application.DisplayAlerts =
True
End Sub

ton ficier de base doit se trouver dans le mem répertoire que tes fichiers à scanner, sinon adapte la variable chemin à ta config.

salut
 
Bonjour Hervé,

Désolé pour ma réponse tardive également, je ne diposais plus du net lors de ces trois dernière semaines.

Merci pour le code, je vais le tester de ce pas... Je te tiendrai au jus 😉

Bonne journée et encore merci

gregory
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.
Retour