Ver Mensaje Individual
  #3 (permalink)  
Antiguo 27/07/2013, 11:43
ameno123
 
Fecha de Ingreso: julio-2010
Mensajes: 158
Antigüedad: 14 años, 4 meses
Puntos: 1
Respuesta: Seleccionar parte de un texto (inicio y fin)

Cita:
Iniciado por erbuson Ver Mensaje
Hola:

Para ello puedes utilizar por ejemplo esta funcion

Código vb:
Ver original
  1. Private Sub Command1_Click()
  2. MsgBox CadenaEntre("Hola, bienvenidos a forosdelweb.com, la mejor página.", "bien", ".com")
  3. End Sub
  4.  
  5. Public Function CadenaEntre(Cadena As String, Desde As String, Hasta As String) As String
  6.   Dim Inicio As Integer, Final As Integer
  7.   ' Buscamos donde empieza el texto inicial
  8.  Inicio = InStr(Cadena, Desde)
  9.   ' Si no la encuentra sale de la funcion sin devolver nada
  10.  If Inicio = 0 Then Exit Function
  11.   ' Buscamos donde empieza el texto final
  12.  Final = InStr(Inicio + 1, Cadena, Hasta)
  13.   ' Si no la encuentra sale de la funcion sin devolver nada
  14.  If Final = 0 Then Exit Function
  15.   ' Devuelve el dato buscado
  16.  CadenaEntre = Mid$(Cadena, Inicio, Final + Len(Hasta) - Inicio)
  17. End Function

El ejemplo es perfecto, pero cuando le puse un texto muy grande dentro de una variable y lo coloqué así: Label1.Caption = CadenaEntre(ContEnido, "Fichero", "¿Quiere")

Me muestra el siguiente error: byref argument type mismatch
Y marca la siguiente linea: ContEnido = WebBrowser1.Document.Body.innertext
Ya que yo saco el texto de Internet.



EDITO: SOLUCIONADO

Cambié lo siguiente: Label1.Caption = CadenaEntre(ContEnido, "Fichero", "¿Quiere")
Por: Label1.Caption = CadenaEntre(WebBrowser1.Document.Body.innertext, "Fichero", "¿Quiere")

Muchisimas Gracias erbuson.