Verrifier si dans le nom du fichier il y a telle chaine
Nagasashi
Messages postés25Date d'inscriptionvendredi 27 novembre 2009StatutMembreDernière intervention20 septembre 2011
-
2 déc. 2009 à 11:51
jmf0
Messages postés1566Date d'inscriptionmardi 26 décembre 2000StatutMembreDernière intervention 5 avril 2013
-
2 déc. 2009 à 14:21
Bonjour,
Etant plus ou moins novice en ce qui concerne le VBScript,j'aurais besoin d'un petit renseignement.
j'aimerais savoir comment faire pour verrifier si mon nom de fichier contient une chaine.
Voici mon code:
Dim oFso,oFso1,nomfic
Set oFso = CreateObject("Scripting.FileSystemObject")
Set f = oFso.OpenTextFile("C:\Documents and Settings\b.laurent\Bureau\Dossier Personnel\FC050ECR02102009 pour B-Laurent", ForReading)
Set rep = oFso.GetFolder("C:\Documents and Settings\b.laurent\Bureau\Dossier Personnel")
If oFSO.FolderExists(rep) Then
For each oFso1 in oFso.getFolder(rep).Files
nonfic=oFso1.name
// Et c'est ici que j'aimerais faire la recheche
end if
next
End if
Je pence que c'est pas bien compliquer, mais je n'est toujours pas trouvé comment faire...
Nagasashi
Messages postés25Date d'inscriptionvendredi 27 novembre 2009StatutMembreDernière intervention20 septembre 20111 2 déc. 2009 à 13:12
J'ai pu tester cette affaire de Instr() sauf le probleme c'est quil faut le la chaine de carractaire chercher soit espacé. Alors que mon fichier a pour nom: FC050ECR02102009
et j'aimerais voir, s'il contient la chaine "ECR".
Donc la fonction InStr() ne me convien pas dans ce cas là :(
jmf0
Messages postés1566Date d'inscriptionmardi 26 décembre 2000StatutMembreDernière intervention 5 avril 20138 2 déc. 2009 à 13:20
J'ai pu tester cette affaire de Instr() sauf le probleme c'est quil faut le la chaine de carractaire chercher soit espacé. Alors que mon fichier a pour nom: FC050ECR02102009
et j'aimerais voir, s'il contient la chaine "ECR".
Donc la fonction InStr() ne me convien pas dans ce cas là :(
Ah ! Belle affirmation !
Sans avoir testé, probablement (ou avoir compris la vocation de Instr)
Nagasashi
Messages postés25Date d'inscriptionvendredi 27 novembre 2009StatutMembreDernière intervention20 septembre 20111 2 déc. 2009 à 13:22
Après plusieur test, c'est pas la fonction Instr() qui me fait défaut, c'est mon "nomfic", car quand je fait: nomfic=oFso1.name ma varriable nomfic ce retrouve vide, elle ne transforme pas le nom de mon fichier en string.
Calade
Messages postés1207Date d'inscriptiondimanche 20 avril 2003StatutMembreDernière intervention 4 juin 201610 2 déc. 2009 à 13:41
Je viens de relire ton 1er post alors mettons les choses au point. Es-tu en VBScript ou en VB6, ce n'est pas pareil et dans le cas n° 2 je déclare forfait en plus que ce n'est pas posté dans la bonne catégorie.
Si comme j'ose l'espérer tu es bien en VB6, dans la fenêtre d'exécution que te donnes ofso1.name ?
jmf0
Messages postés1566Date d'inscriptionmardi 26 décembre 2000StatutMembreDernière intervention 5 avril 20138 2 déc. 2009 à 14:00
Ah !
Alors change de discussion ! Ce n'est plus l'extraction d'une sous-chaîne dans une chaîne, qui te cause problème, mais autre chose : l'établissement même de ta chaîne !
jmf0
Messages postés1566Date d'inscriptionmardi 26 décembre 2000StatutMembreDernière intervention 5 avril 20138 2 déc. 2009 à 14:06
Et même si j'ai banni depuis longtemps l'utilisation de ce lourdaud de FSO depuis VB6, une chose demeure super évidente :
Dans ta boucle for each (à son issue, donc, puisque foir Each), c'est le dernier fichier qui est retenu, pardi (pas forcément delui que tu veux !)
Mais voilà : je n'irai pas plus loin car tu poses une question sans vrai rapport avec la vraie cause (tes difficultés à utiliser FSO pour extraire un nom de fichier d'un répertoire)
jmf0
Messages postés1566Date d'inscriptionmardi 26 décembre 2000StatutMembreDernière intervention 5 avril 20138 2 déc. 2009 à 14:21
Non m'sieu ! non ! tout simplement VB ... tout seul .... 'il est doté de ce qu'il faut et qui est à la fois plus léger et plus rapide que FSO, ce lourdoud inutile).
Mais j'arrête-là ! ce n'est pas le sujet apparent de la discussion ouverte, telle qu'ouverte !
Désolé, mais je tiens à cette discipline là !