hacktiviste
Messages postés4Date d'inscriptionmardi 21 septembre 2004StatutMembreDernière intervention21 avril 2006
-
21 avril 2006 à 09:46
jrivet
Messages postés7392Date d'inscriptionmercredi 23 avril 2003StatutMembreDernière intervention 6 avril 2012
-
21 avril 2006 à 11:05
Bonjour à tous,
toujours novice dans mes script vb6 (mais j'y bosse :-) )
Je cherchais a mettre en place un petit script pour aller tester, dans un fichier texte, si les caracteres 11 et 12 d'une ligne sont egaux a "IE" alors ajouter a la fin de la ligne "ligne ok" ..
Est ce faisable ? je me doute que oui..
Pourriez vous m'aider a me mettre sur la voix?
Par avance merci pour votre aide.
Cordialement.
-------------------------------------------
Have fun
Cordialement.
Hacktiviste
PCPT
Messages postés13272Date d'inscriptionlundi 13 décembre 2004StatutMembreDernière intervention 3 février 201847 21 avril 2006 à 10:01
salut,
Option Explicit
Const s1 As String = "machaineokIE"
Const s2 As String = "machainepasokIE"
Const s3 As String = "vbfrance"
'
Private Sub Form_Load()
MsgBox s1 & vbCrLf & IsValidIE(s1)
MsgBox s2 & vbCrLf & IsValidIE(s2)
MsgBox s3 & vbCrLf & IsValidIE(s3)
Unload Me
End Sub
'
Private Function IsValidIE(sChaine As String) As Boolean
If Mid$(sChaine, 11, 2) = "IE" Then
IsValidIE = True
Else
IsValidIE = False
End If
End Function
jrivet
Messages postés7392Date d'inscriptionmercredi 23 avril 2003StatutMembreDernière intervention 6 avril 201260 21 avril 2006 à 10:15
Salut,
Voici un ptit bout de code pas optimisé du tout mais qui peut t'aider à commencer quelque chose de mieux.
Option Explicit
Private Sub Form_Load()
Call TesteFichier("C:\1.txt")
End Sub
Private Sub TesteFichier(NomFichier As String)
Dim Lignes() As String 'Tableau représentant les lignes du fichier
Dim i As Integer
ReDim Lignes(0)
Call LoadFichier(NomFichier, Lignes)
For i = 1 To UBound(Lignes) If Mid(Lignes(i), 11, 2) "IE" Then Lignes(i) Lignes(i) & " OK"
Next
Call SaveFichier(NomFichier, Lignes)
End Sub
Private Sub LoadFichier(NomFichier As String, ByRef Lignes() As String)
Dim UneLigne As String
Open NomFichier For Input As #1
While Not EOF(1)
Line Input #1, UneLigne
ReDim Preserve Lignes(UBound(Lignes) + 1)
Lignes(UBound(Lignes)) = UneLigne
Wend
Close #1
End Sub
Private Sub SaveFichier(NomFichier As String, ByRef Lignes() As String)
Dim i As Integer
Call Kill(NomFichier)
Open NomFichier For Output As #1
For i = 1 To UBound(Lignes)
Print #1, Lignes(i)
Next
Close #1
End Sub
@+, Julien Pensez: Moteur de Recherche, Réponse Acceptée
hacktiviste
Messages postés4Date d'inscriptionmardi 21 septembre 2004StatutMembreDernière intervention21 avril 2006 21 avril 2006 à 10:18
Merci beaucoup pour ton code, a vrai dire j'y comprend pas grand chose pour le moment...Mais je vais me pencher dessus tres serieusement....
En fait je voulais saisir le chemin du fichier dans une textbox, puis quand j'appuie sur le commandbutton, il va me checker mon fichier texte et me rajouter a la fin des lignes adequats (qui contiennent "IE" comme 13et 14 eme caractères) la chaine "ligne ok"...
Bon je vais me pencher la dessus je pense que ton code doit me donner beaucoup d'indications pour faire ce que je desire...
Merci beaucoup
-------------------------------------------
Have fun
Cordialement.
Hacktiviste
Vous n’avez pas trouvé la réponse que vous recherchez ?
jrivet
Messages postés7392Date d'inscriptionmercredi 23 avril 2003StatutMembreDernière intervention 6 avril 201260 21 avril 2006 à 10:22
Re,
Tu avais dit dans le premier post 11eme et 12 eme...
Peu importe il faut alors remplacer
If Mid(Lignes(i), 11, 2) = "IE"
Par
If Mid(Lignes(i), 13 , 2) = "IE"
Ensuite si tu as un textbox et un commandbutton
Vire la Sub Form_Load
Et ajoute
Private Sub Command1_Click()
Call TesteFichier(Text1.text)
End Sub
Voila en espérant avoir pu t'aider un peu...
IL ME FAUT LA COLORATION SYNTAXIQUE AUTOMATIQUE... : => Moteur de recherche mais je trouve pas...
@+, Julien Pensez: Moteur de Recherche, Réponse Acceptée
hacktiviste
Messages postés4Date d'inscriptionmardi 21 septembre 2004StatutMembreDernière intervention21 avril 2006 21 avril 2006 à 10:28
J'ai posté un peu vite, je n'avais pas vu la reponse de jrivet...Qui colle a ce que je voulais....
J'optimiserai donc avec le 1er code fournis....par PCPT...En tout cas merci a vous 2 pour votre reactivité et disponibilité....
Bonne journée à tous....
++
-------------------------------------------
Have fun
Cordialement.
Hacktiviste