Hola:
Supongo que sabes que las asignaciones de valores o instrucciones que tienes entre el If y el Then, SOLO se ejecutan si se cumple la condicion.
Código vb:
Ver originalIf lin = "WV63|WW60|WW61|WW68|GT00" Then
Line Input #1, strs
Line Input #1, strs
strdato() = Split(strs, "|")
lote = strdato(UBound(strdato)) ' si lo pongo aqui no me coge el valor para el resto de trama del programa
End If
Por lo tanto imagino que la condicion de que lin sea igual a "WV63|WW60|WW61|WW68|GT00" no se cumple por lo que no te devuelve el dato.
Hay otras maneras, pero si añades después del If y antes del Line Input la sentencia
MsgBox "Estoy dentro del IF"
sabrás si se cumple o no la condición.
Por otra parte si explicas lo que pretendes hacer, podremos decirte donde te estas equivocando.
Saludos