Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Autres tester ma pseudo boite de dialogue fichier avec filtre

patricktoulon

XLDnaute Barbatruc
Bonjour à tous
si il y a des âmes charitables qui voudraient bien tester ma pseudo boite de dialogue fichier avec filtre ca m'arrangerait
en fait je l'ai créée sous trois formae différente

1° la filedilogspecial1
avec un dir en ligne de commande lancée par wscript.shell(.excec) et récupérée par le stdout.readall
ce qui implique une apparition brève mais tout de même de la fenêtre dos

2° la filedilogspecial2
avec un dir en ligne de commande lancée par wscript.shell (.run)et récupérée dans un fichier text temporaire
ce qui implique que la fenêtre dos n'apparait pas puisque je hide la fenêtre

3° la filedilogspecial3
dans celle ci j'utilise un hersats de ma fonction FSOGOSUB de 2021 avec FSO

tout les argument sont optionnels
le choix du fichier se fait au double click
possibilité d'annuler

vous avez 3 module pour tester chaque version
si vous pouviez donc tester la testA4 , TestB4 , TestC4 qui sont selon moi les plus importantes
et me dire si la différence de temps d'apparition de la fenêtre avec la liste de fichier filtrée avec les arguments envoyés par les sub de testsest importante ou pas
voir même cela vous gène t il plus que ça (que la fenêtre dos apparaisse brièvement (pour la fildialoSpecial1) )?

merci aux testeurs
 

Pièces jointes

  • boite de dialog recherche de fichier with part of name and or extension.xlsm
    44.5 KB · Affichages: 13

Staple1600

XLDnaute Barbatruc
Re

Il y a aucune incohérence
Je ne fait que tester ton code et détaille (*) comment j'ai testé
C'est simplement tout à l'heure que j'ai pensé à regarder le contenu du fichier text

(*) en nommant depuis le début de mes tests, l'userform qui pose problème sur mon PC
à savoir : FilDialogSepcial2

On est bien d'accord que le fichier texte devrait contenir le résultat du dir, non ?
cmd /C Dir "C:\Users\XXX\Downloads\YYY\*.*.xlsx" /b /a-d > "C:\Users\XXX\desktop\temp_output.txt"

Or il est vide (suite au test que j'ai décrit dans le message#55)
 

Staple1600

XLDnaute Barbatruc
Bonjour le fil

@patricktoulon
[A] Je viens de tester les 3 userforms en cochant Checkrecursif
(depuis VBE, => F5 )
=>FilDialogSepcial1
Affiche le nom du fichier dans ListBox1
Mais labelcount affiche 2 fichiers trouvés
=>FilDialogSepcial2
Toujours le même problème
=>FilDialogSepcial3
Affiche le nom du fichier dans ListBox1
Mais labelcount affiche 2 fichiers trouvés

J'ai fait le même test avec un seul fichier *.xlsm dans le dossier.
(et suppression du fichier *.xlsx précédent utilisé)
=> Même résultat pour les 3 trois tests qu'au point A

[B] en testant à partir du module
VB:
Const strPath As String = "C:\Users\XXX\Downloads\YYY"
Sub testB5()
    'rechercher les fichiers   avec extension "xlsx" avec récursivité
    MsgBox FilDialogSepcial2.File(strPath, Extension:="xlsx", cherche:=True, récursif:=True)
End Sub
Idem , le message MSG_LISTE_VIDE s'affiche.
 

Staple1600

XLDnaute Barbatruc
Re

@patricktoulon
J'ai trouvé où le bât blessait(*) grâce à ce bon MSDOS
Ton TempString initial était
cmd /C Dir "C:\Users\XXX\Downloads\YYY\*.*.xlsm" /b /a-d > "C:\Users\XXX\desktop\temp_output.txt"

En testant dans l'invite MSDOS, j'obtenais : Fichier introuvable
J'ai donc modifié comme suit et Eureka!

Ensuite j'ai modifié ton VBA ainsi
TempString = Replace("cmd /C Dir ""*****""" & Recurr & " /b /a-d > """ & tempFile & """", "*****", CStr(chemin) & Expression & Extension, 1, -1, vbTextCompare)
Et miracle

(*) avec mon PC et Office 365
 
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…