Hola
hades0024, el código se ve correctamente y debería funcionar, salvo unos pequeños detalles sin importancia casi: la línea del Split = oLine.Split(";") que debe ir dentro del If, y también habría que agregarle un if para que el último MsgBox no se muestre en caso de haber encontrado el dato:
Código vb.net:
Ver originalPublic objR As New StreamReader("\archivo.csv")
Public oLine As String = ""
Public oTexto As New ArrayList()
Public separ As String = ";"
Private Encontro as Boolean
Do
oLine = objR.ReadLine
If Not oLine Is Nothing Then
For i = 0 To split.Length - 1
If TextBox1
.Text = split(i
) Then Encontro = True
'MsgBox("Se encuentra el codigo" & vbCrLf & split(i) & vbCrLf & i)
TextBox2.Text = (oLine)
End If
'MsgBox(split(i) & vbCrLf & i)
Next
End If
oTexto.Add(oLine)
Loop Until oLine Is Nothing
If Not Encontro Then
MsgBox("No se encontro el cod") End If
Otra cosa que hay que ver es si se debe seguir buscando luego de haber encontrado una ocurrencia, o se puede parar la búsqueda con
Exit Do.
Ahora bien, existe otra manera más resumida y más veloz de lograr lo mismo sin usar el
Split, pero habría que ver si se puede aplicar a tu caso, ya que no es una fórmula general y depende de los datos:
Código vb.net:
Ver originalPublic objR As New StreamReader("\archivo.csv")
Public oLine As String = ""
Public oTexto As New ArrayList()
Public separ As String = ";"
Private Encontro as Boolean
Do
oLine = objR.ReadLine
If Not oLine Is Nothing Then
If oLine.IndexOf(TextBox1.Text) >= 0 Then
Encontro = True
TextBox2.Text = (oLine)
End If
End If
oTexto.Add(oLine)
Loop Until oLine Is Nothing
If Not Encontro Then
MsgBox("No se encontro el cod") End If
¡Saludos cordiales desde
Argentina!