Comportamiento extraño Sub

08/04/2007 - 17:50 por J. Enrique Alcaraz | Informe spam
Hola:

El caso es que quiero hacer un Replace para transformar texto
-
Dim strTexto
strTexto = Recordset.Fields.Value (Siempre está referido a un campo que
contiene texto)
If strTexto <> "" Then
strTexto = Replace ( strTexto, chr (13), "")
strTexto = Replace ( strTexto, chr (10), "<br>")
strTexto = Replace ( strTexto, chr (241), "&ntilde;")
End If
-

Cuando lo hago así "a mano" funciona siempre perfectamente, pero cuando lo
convierto en un sub para poder aplicarlo a otros textos unas veces funciona
y otras no.

El Sub sería algo así como
-
Sub TextoAdaptado (Texto)
Texto = Replace ( Texto, chr (13), "")
Texto = Replace ( Texto, chr (10), "<br>")
Texto = Replace ( Texto, chr (241), "&ntilde;")
End Sub

TextoAdaptado strTexto
-

¿Qué puede estar pasando para que unas veces funcione y otras no?

Agradeceré a quien me pueda orientar.

Saludos al grupo.

Preguntas similare

Leer las respuestas

#1 Nuno Santos
08/04/2007 - 23:16 | Informe spam
Para que te funcione, y como es una sub, el parameter Texto tiene que ser
byRef, otra solucíon es en ves de ser na sub, ser una función, y esta
retornar el texto yá con los replaces...

Nuno Santos

"J. Enrique Alcaraz" <alcarazQUITARarrobaESTOranpuntoes> escreveu na
mensagem news:
Hola:

El caso es que quiero hacer un Replace para transformar texto
-
Dim strTexto
strTexto = Recordset.Fields.Value (Siempre está referido a un campo que
contiene texto)
If strTexto <> "" Then
strTexto = Replace ( strTexto, chr (13), "")
strTexto = Replace ( strTexto, chr (10), "<br>")
strTexto = Replace ( strTexto, chr (241), "&ntilde;")
End If
-

Cuando lo hago así "a mano" funciona siempre perfectamente, pero cuando lo
convierto en un sub para poder aplicarlo a otros textos unas veces
funciona y otras no.

El Sub sería algo así como
-
Sub TextoAdaptado (Texto)
Texto = Replace ( Texto, chr (13), "")
Texto = Replace ( Texto, chr (10), "<br>")
Texto = Replace ( Texto, chr (241), "&ntilde;")
End Sub

TextoAdaptado strTexto
-

¿Qué puede estar pasando para que unas veces funcione y otras no?

Agradeceré a quien me pueda orientar.

Saludos al grupo.




Respuesta Responder a este mensaje
#2 J. Enrique Alcaraz
09/04/2007 - 11:36 | Informe spam
Muchas gracias, Nuno, lo he probado poniendo un ByRef en el argumento,
convirtiendo en función poniendo el Response.Write Texto al final, pero
curiosamente sigue funcionando donde antes funcionaba pero sigue dando error
en el resto, me da un mensaje que dice "se esperaba fin de la instrucción" o
"se esperaba ")"" y cuando no da error parece que no reconoce el texto y lo
deja en blanco, no sé lo que puede pasar pero ya lo he probado todo, ya digo
que lo raro es que unas veces funciona y otras no poniendo el mismo código,
me sigo viendo obligado a hacer muchos replaces en cada texto que extraigo
del campo de Access.

Saludos al grupo.


"Nuno Santos" <nunos7[REMOVE]@hotmail.com> escribió en el mensaje
news:
Para que te funcione, y como es una sub, el parameter Texto tiene que ser
byRef, otra solucíon es en ves de ser na sub, ser una función, y esta
retornar el texto yá con los replaces...

Nuno Santos


"J. Enrique Alcaraz" <alcarazQUITARarrobaESTOranpuntoes> escreveu na
mensagem news:
Hola:

El caso es que quiero hacer un Replace para transformar texto
-
Dim strTexto
strTexto = Recordset.Fields.Value (Siempre está referido a un campo que
contiene texto)
If strTexto <> "" Then
strTexto = Replace ( strTexto, chr (13), "")
strTexto = Replace ( strTexto, chr (10), "<br>")
strTexto = Replace ( strTexto, chr (241), "&ntilde;")
End If
-

Cuando lo hago así "a mano" funciona siempre perfectamente, pero cuando
lo convierto en un sub para poder aplicarlo a otros textos unas veces
funciona y otras no.

El Sub sería algo así como
-
Sub TextoAdaptado (Texto)
Texto = Replace ( Texto, chr (13), "")
Texto = Replace ( Texto, chr (10), "<br>")
Texto = Replace ( Texto, chr (241), "&ntilde;")
End Sub

TextoAdaptado strTexto
-

¿Qué puede estar pasando para que unas veces funcione y otras no?

Agradeceré a quien me pueda orientar.

Saludos al grupo.








Respuesta Responder a este mensaje
#3 Nuno Santos
09/04/2007 - 14:43 | Informe spam
Puedes colocar el código en que está dando el erro?

NS

"J. Enrique Alcaraz" <alcarazQUITARarrobaESTOranpuntoes> wrote in message
news:
Muchas gracias, Nuno, lo he probado poniendo un ByRef en el argumento,
convirtiendo en función poniendo el Response.Write Texto al final, pero
curiosamente sigue funcionando donde antes funcionaba pero sigue dando
error en el resto, me da un mensaje que dice "se esperaba fin de la
instrucción" o "se esperaba ")"" y cuando no da error parece que no
reconoce el texto y lo deja en blanco, no sé lo que puede pasar pero ya lo
he probado todo, ya digo que lo raro es que unas veces funciona y otras no
poniendo el mismo código, me sigo viendo obligado a hacer muchos replaces
en cada texto que extraigo del campo de Access.

Saludos al grupo.


"Nuno Santos" <nunos7[REMOVE]@hotmail.com> escribió en el mensaje
news:
Para que te funcione, y como es una sub, el parameter Texto tiene que ser
byRef, otra solucíon es en ves de ser na sub, ser una función, y esta
retornar el texto yá con los replaces...

Nuno Santos




"J. Enrique Alcaraz" <alcarazQUITARarrobaESTOranpuntoes> escreveu na
mensagem news:
Hola:

El caso es que quiero hacer un Replace para transformar texto
-
Dim strTexto
strTexto = Recordset.Fields.Value (Siempre está referido a un campo
que contiene texto)
If strTexto <> "" Then
strTexto = Replace ( strTexto, chr (13), "")
strTexto = Replace ( strTexto, chr (10), "<br>")
strTexto = Replace ( strTexto, chr (241), "&ntilde;")
End If
-

Cuando lo hago así "a mano" funciona siempre perfectamente, pero cuando
lo convierto en un sub para poder aplicarlo a otros textos unas veces
funciona y otras no.

El Sub sería algo así como
-
Sub TextoAdaptado (Texto)
Texto = Replace ( Texto, chr (13), "")
Texto = Replace ( Texto, chr (10), "<br>")
Texto = Replace ( Texto, chr (241), "&ntilde;")
End Sub

TextoAdaptado strTexto
-

¿Qué puede estar pasando para que unas veces funcione y otras no?

Agradeceré a quien me pueda orientar.

Saludos al grupo.












Respuesta Responder a este mensaje
#4 J. Enrique Alcaraz
09/04/2007 - 15:05 | Informe spam
Hola Nuno, ahora mismo iba a comunicar que el error está solucionado. Se
trataba de un error en la sucesión de Replaces
que en un momento dado hacía referencia a otra variable de un texto
concreto, por eso sólo funcionaba con ese texto y no con los demás. A veces
un pequeño error de estos da muchos quebraderos de cabeza y no sabes cómo
solucionarlo.
De todas formas gracias por tus indicaciones porque estoy cambiando a
function con el resultado del response.write al final y también da buen
resultado.

Saludos al grupo.
-

"Nuno Santos" <nunos7@[REMOVER]hotmail.com> escribió en el mensaje
news:
Puedes colocar el código en que está dando el erro?

NS

"J. Enrique Alcaraz" <alcarazQUITARarrobaESTOranpuntoes> wrote in message
news:
Muchas gracias, Nuno, lo he probado poniendo un ByRef en el argumento,
convirtiendo en función poniendo el Response.Write Texto al final, pero
curiosamente sigue funcionando donde antes funcionaba pero sigue dando
error en el resto, me da un mensaje que dice "se esperaba fin de la
instrucción" o "se esperaba ")"" y cuando no da error parece que no
reconoce el texto y lo deja en blanco, no sé lo que puede pasar pero ya
lo he probado todo, ya digo que lo raro es que unas veces funciona y
otras no poniendo el mismo código, me sigo viendo obligado a hacer muchos
replaces en cada texto que extraigo del campo de Access
Respuesta Responder a este mensaje
#5 Nuno Santos
09/04/2007 - 15:46 | Informe spam
Ok, pero en vez de hacer response.write en la función retorna el valor.

public function ReplacedStr(texto)
' haces lo que tienes a hacer
' .
' .

ReplacedStr = textoReplaced
end function

<%=ReplacedStr ("Mi texto a hacer replaced?!?!?!?")%>

NS

"J. Enrique Alcaraz" <alcarazQUITARarrobaESTOranpuntoes> wrote in message
news:

Hola Nuno, ahora mismo iba a comunicar que el error está solucionado. Se
trataba de un error en la sucesión de Replaces
que en un momento dado hacía referencia a otra variable de un texto
concreto, por eso sólo funcionaba con ese texto y no con los demás. A
veces un pequeño error de estos da muchos quebraderos de cabeza y no sabes
cómo solucionarlo.
De todas formas gracias por tus indicaciones porque estoy cambiando a
function con el resultado del response.write al final y también da buen
resultado.

Saludos al grupo.
-

"Nuno Santos" <nunos7@[REMOVER]hotmail.com> escribió en el mensaje
news:
Puedes colocar el código en que está dando el erro?

NS

"J. Enrique Alcaraz" <alcarazQUITARarrobaESTOranpuntoes> wrote in message
news:
Muchas gracias, Nuno, lo he probado poniendo un ByRef en el argumento,
convirtiendo en función poniendo el Response.Write Texto al final, pero
curiosamente sigue funcionando donde antes funcionaba pero sigue dando
error en el resto, me da un mensaje que dice "se esperaba fin de la
instrucción" o "se esperaba ")"" y cuando no da error parece que no
reconoce el texto y lo deja en blanco, no sé lo que puede pasar pero ya
lo he probado todo, ya digo que lo raro es que unas veces funciona y
otras no poniendo el mismo código, me sigo viendo obligado a hacer
muchos replaces en cada texto que extraigo del campo de Access






email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida