Dim iPosD1 As Integer Dim iPosD2 As Integer Dim chaine1 As String Dim chD1 As String Dim chD2 As String Dim ChaineFin As String chaine1 = "mot1blablamot2bliblimot3" chD1 = "mot1" chD2 = "mot3" iPosD1 = InStr(1, chaine1, chD1) iPosD2 = InStr(iPosD1 + Len(chD1), chaine1, chD2) ChaineFin = Mid$(chaine1, iPosD1 + Len(chD1), iPosD2 - (iPosD1 + Len(chD1))) Debug.Print ChaineFin
Private Sub Command1_Click() Dim NumFich As Integer Dim Tampon As String Dim iPosD1 As Integer Dim iPosD2 As Integer Dim PremiereChaineRch As String Dim SecondeChaineRch As String Dim ChaineFin As String NumFich = FreeFile Open "c:\windows\desktop\x.txt" For Binary Access Read Lock Read As #NumFich 'Input #NumFich, Tampon Tampon = Input(LOF(NumFich), #NumFich) Close #NumFich Debug.Print Tampon PremiereChaineRch = "aaa" SecondeChaineRch = "ddd" iPosD1 = InStr(1, Tampon, PremiereChaineRch) If (iPosD1 > 0) Then 'Si "aaa" trouvé iPosD2 = InStr(iPosD1 + Len(PremiereChaineRch), Tampon, SecondeChaineRch) If (iPosD2 > 0) Then ChaineFin = Mid$(Tampon, iPosD1 + Len(PremiereChaineRch), iPosD2 - (iPosD1 + Len(PremiereChaineRch))) ChaineFin = Replace(ChaineFin, vbCrLf, "") Debug.Print ChaineFin Else MsgBox "Impossible de trouver la chaine de fin d'extraction..." End If Else MsgBox "Impossible de trouver la chaine de début d'extraction..." End If End Sub