cs_JeffC1977
Messages postés928Date d'inscriptionvendredi 10 novembre 2000StatutMembreDernière intervention23 septembre 2023
-
25 avril 2006 à 15:29
asecher
Messages postés262Date d'inscriptionlundi 20 octobre 2003StatutMembreDernière intervention27 avril 2007
-
26 avril 2006 à 10:51
Bonjour à tous... j'ai un blanc de mémoire...
Je ne me souvient plus du caractère utilisé dans VB6 pour remplacer le * (dans l'ancien dos)
En d'autres mots, j'ai des fichiers qui se nomme 01__343_02.htm
Je veux demander d'ouvrir le fichier qui se nomme 01__343 avec les n'importe quel caractère qui suit le 343 et qui a un extension .htm.
Car dans les nombreux fichiers que j'ai dans mon répertoire, j'ai des fichiers qui comment toute pareil (01__) mais qui ne se termaine pas pareil (dans l'exemple ici, _02) et se sont tous des .htm
Donc qu'est ce que je mets à la place de l'étoile (*) dans le code suivant ????
cs_emma16
Messages postés61Date d'inscriptiondimanche 8 mai 2005StatutMembreDernière intervention23 juin 2006 25 avril 2006 à 16:58
il me semble que j'ai vu des exemple dans msdn. je croi sque pour ton fichier qui commence par 01__343 il faut mettre # apres le 343
va voir dans msdn...
asecher
Messages postés262Date d'inscriptionlundi 20 octobre 2003StatutMembreDernière intervention27 avril 20071 25 avril 2006 à 17:16
Bonjour,
Je ne comprends pas ce que tu veux faire ....
Que se passe t'il si tu as plusieurs fichiers qui correspondent à tes critères ?
sinon, ton critère avec l'étoile doit fonctionner, mais fais plutôt une boucle sur une fonction Dir....
cs_JeffC1977
Messages postés928Date d'inscriptionvendredi 10 novembre 2000StatutMembreDernière intervention23 septembre 20234 25 avril 2006 à 17:49
Salut...
C'est un peu bisare les fichiers que j'ai.... ils viennent du gouvernement c'est peut-être pour cela lol..:P
J'ai qu'un fichier qui se nomme 01__10A-1_02.htm
Je vais écrire dans un textbox 10A-1 et le fichier (01__10A-1_02.htm) doit s'ouvrir.
Sauf que la terminaison de mes fichiers ne se nomme pas tous _02 j'en ai qui se nomme _04 ou _06 mais j'ai jamais un doublon pour la première partie du fichier (01__10A-1).
Donc mon prochain fichier est par exemple 01__10A-2_05.htm
Donc si je ferais une recherche en DOS pour ouvrir le fichier 01__10A-1_02.htm je dirais 01__10A-1*
.htm
asecher
Messages postés262Date d'inscriptionlundi 20 octobre 2003StatutMembreDernière intervention27 avril 20071 25 avril 2006 à 18:25
Je ne comprends pas pourquoi çà ne marche pas ....
Si tu fais :
'_____________________
strIndex="343_"
strATROUVER = "m:\Recherches_BPD\index_aux_immeubles\BPD_Montcalm\Kilkenny\INDEX_ST-CALIXTE\MONTCALM\Canton_de_Kilkenny\RANG_8" & "01__" & strIndex & "*.htm"
sFile = Dir(strATROUVER) 'recherche le premier fichier qui correspond
Do While sFile <> "" 's'il en trouve
shell(sFile) 'lance le
sfile = Dir 'cherche le suivant
Loop
'_____________________
Tu dois pouvoir lancer toutes les pages html recherchées ...
PCPT
Messages postés13272Date d'inscriptionlundi 13 décembre 2004StatutMembreDernière intervention 3 février 201847 25 avril 2006 à 18:50
salut,
tu confonds apparemment le listing et l'ouverture.
il faut d'abord lister (dir) avec *, sauver les chemins en tableau, puis ouvrir avec les chemins complets trouvés.
asecher
Messages postés262Date d'inscriptionlundi 20 octobre 2003StatutMembreDernière intervention27 avril 20071 25 avril 2006 à 19:02
Ben pourquoi les sauver dans un tableau ?
On les ouvre au fur et à mesure et ya pas de confusion pour l'étoile qui ne sert que de pattern à la recherche effectuée par le dir.
cs_JeffC1977
Messages postés928Date d'inscriptionvendredi 10 novembre 2000StatutMembreDernière intervention23 septembre 20234 25 avril 2006 à 20:26
Salut... merci à tous.....
et bien je n'ai pas besoin de faire de boucle dans mon code... J'ai programmer autre chose du genre que si le fichier n'existe pas alors un message est afficher dans un label
If Fichier1 > 32 Then GoTo .........
Mais je vais essayer le ?????? ca devrait marcher....
cs_JeffC1977
Messages postés928Date d'inscriptionvendredi 10 novembre 2000StatutMembreDernière intervention23 septembre 20234 25 avril 2006 à 20:58
Rebonjour... ou plutôt bonsoir
J'ai fais deux test à vrai dire...
le premier j'ai essayé les points d'intérogatuons.... Il ne trouve pas le fichier...
Voicie le code que j'ai utilisé
Private Sub cmdIndex_Click()
strIndex = txtIndex
Fichier1 = ShellExecute(Me.hWnd, "open", _
"m:\Recherches_BPD\index_aux_immeubles\BPD_Montcalm\Kilkenny\INDEX_ST-CALIXTE\MONTCALM\Canton_de_Kilkenny\RANG_8" _
& "01__" & strIndex & "????.htm", vbNullString, "", SW_SHOWNORMAL)
End Sub
Sauf si j'enlève tout ce qui est entre guillemet ("01__" et "????.htm") et bien le fichier s'ouvre (bien sur j'inscrit le nom du fichier au complet)
Voici le code que j'ai modifié pour le test
Private Sub cmdIndex_Click()
strIndex = txtIndex
Fichier1 = ShellExecute(Me.hWnd, "open", _
"m:\Recherches_BPD\index_aux_immeubles\BPD_Montcalm\Kilkenny\INDEX_ST-CALIXTE\MONTCALM\Canton_de_Kilkenny\RANG_8" _
& strIndex, vbNullString, "", SW_SHOWNORMAL)
End Sub
cs_JeffC1977
Messages postés928Date d'inscriptionvendredi 10 novembre 2000StatutMembreDernière intervention23 septembre 20234 25 avril 2006 à 22:26
salut PCPT
Merci pour le code avec le Dir....
Je ne savais pas comment le coder... mais le bug c'est que j'utilise ce type de code (sans utiliser le Dir) dans mon programme et ca fonctionne très bien....
Mais je vais prendre ton code car on dirais que ce ne fonctionne pas toujours ce shellexecute....
Est-ce que tu peux me dire pourquoi ca fonctionne si j'utilise une ligne de code comme cela
Fichier1 = ShellExecute(Me.hWnd, "open", _
"m:\Recherches_BPD\index_aux_immeubles\BPD_Montcalm\Kilkenny\INDEX_ST-CALIXTE\MONTCALM\Canton_de_Kilkenny\RANG_8" _
& "01__" & strIndex & "*.htm", vbNullString, "", SW_SHOWNORMAL)
Mais pourquoi si je rajoute l'étoile ca ne fonctionne pas ???? et s'il n'y a pas d'étoile, c'est-à-dire je rentre le nom entier du fichier ca fonctionne très bien ????
J'attends de tes nouvelles à savoir si peux m'éclairer un peux... merci d'avance...
P.S. je vais essayer ton code demain et je viendrai cliquer sur "Réponse acceptée !"
PCPT
Messages postés13272Date d'inscriptionlundi 13 décembre 2004StatutMembreDernière intervention 3 février 201847 25 avril 2006 à 22:32
shellexecute te renvoie une valeur.
que contient strIndex ?
peut-être que si au final ton fichier est "01__4040.htm", fichier non existant, shell plante.
d'où une vérification d'existance à faire avant (pour avoir le fichier correct avec certitude)
asecher
Messages postés262Date d'inscriptionlundi 20 octobre 2003StatutMembreDernière intervention27 avril 20071 26 avril 2006 à 10:51
Mais c'est pas possible !!!
Qu'est-ce que vous racontez ????
Si on ne fournit pas le nom complet du fichier au ShellExecute, le fichier ne sera pas trouvé et donc ne sera pas lancé.
Le but de la commande Dir, c'est de trouver si un ou plusieurs fichiers correspondent aux critères (avec * ou ?).
Donc, pas question de lancer un shellExecute () avec un dfichier avec * ou ?, il faut le nom exact.