IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBScript Discussion :

filtre dans boucle


Sujet :

VBScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Janvier 2008
    Messages
    75
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 75
    Par défaut filtre dans boucle
    Bonjour,

    Je dois travailler sur un vieux serveur, duquel il est impossible de rapatrier des données, du coup je dois travailler en VBS .

    J'ai un fichier texte, dont je veux filtrer chaque ligne en fonction d'un critere (présence d'une chaine) et rediriger le résultat vers un autre fichier texte.

    J'arrive à afficher ligne par ligne le contenu, mais le filtre dessus ne fonctionne pas.

    Voici mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     
     
     
    Const ForReading = 1, ForWriting = 2 
    Dim oFso, f
     
    	Set oFso = CreateObject("Scripting.FileSystemObject")
    	Set f = oFso.OpenTextFile("c:\temp\ecr.txt", ForReading)
    	while Not f.AtEndOfStream 
    	g=f.readline
    	b=Filter(g,"10.32.5.50",true,1)
    		For each x in b
    		wscript.echo g
    		next
    	wend
     
    f.Close
    l'erreur est : Ms vbscript runtime error: tpe mismatch : 'filter'.

    Quelqu'un aurait il une idée de ce qui ne va pas dans ce script?

    Merci d'avance à ceux qui pourraient m'aider.

  2. #2
    Membre chevronné Avatar de pitchalov
    Homme Profil pro
    Inscrit en
    Avril 2007
    Messages
    340
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 340
    Par défaut
    Bonjour,

    La fonction Filter ne me parait pas être la solution à ton problème. L'erreur que tu as eu est normale car cette fonction attend un tableau de chaines en premier paramètre, et que tu lui fournis une chaine...

    Bref. Pour chercher la présence d'une chaine dans une autre, je pense que la fonction InStr est plus adaptée :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Const ForReading = 1, ForWriting = 2 
    Dim oFso, f
    Set oFso = CreateObject("Scripting.FileSystemObject")
    Set f = oFso.OpenTextFile("c:\temp\ecr.txt", ForReading)
    Do While Not f.AtEndOfStream 
    	g=f.readline
    	If InStr(1, g, "10.32.5.50", vbTextCompare) > 0 Then WScript.Echo g
    Loop
    f.Close
    Bonne continuation.

  3. #3
    Membre confirmé
    Inscrit en
    Janvier 2008
    Messages
    75
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 75
    Par défaut
    Merci bien,
    J'ai pu faire ce que je voulais

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Configurer un filtre dans le détail
    Par drpark dans le forum DirectX
    Réponses: 6
    Dernier message: 02/08/2006, 15h53
  2. Filtre dans un sous-formulaire
    Par moto25 dans le forum IHM
    Réponses: 14
    Dernier message: 10/11/2005, 09h16
  3. [VB.NET] filtre dans base de donnée
    Par speedtug dans le forum Windows Forms
    Réponses: 7
    Dernier message: 21/09/2005, 17h12
  4. Application d'un filtre dans sous form (syntaxe)
    Par samlepiratepaddy dans le forum Access
    Réponses: 12
    Dernier message: 15/09/2005, 21h32
  5. Probleme de filtre dans bdd
    Par scorpiwolf dans le forum C++Builder
    Réponses: 2
    Dernier message: 04/06/2002, 10h43

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo