Duda Cadena de Texto excell la toma como numeros.

19/11/2004 - 17:40 por Cristian Muñoz Tello. | Informe spam
Tengo una duda. Estoy utilizando la instrucción

Response.ContentType = "application/vnd.ms-excel"


y me hace bien el reporte, pero tengo unos datos de tipo cadena
0075000896, que cuando los veo en la página en excell me elimina los
ceros a la izquierda. Probé con ponerle ' y espacios en blanco pero el
cliente no me acepta el cambio.

Atte.

Cristián Muñoz Tello.

Preguntas similare

Leer las respuestas

#6 Cristian Muñoz Tello.
20/11/2004 - 18:29 | Informe spam
Sashka:

Muchas pero muchas. Ahora si me funcionó inmediatamente!!.

Saludos.

Cristián Muñoz Tello.
Serco Ltda.
www.serco.cl


"Sashka" escribió en el mensaje
news:O$
-
¡Importante!: Colabora con el grupo. Contesta a este mensaje y dinos si te
sirvió o no la respuesta dada. Muchas gracias
Interpreté que creabas una tabla HTML (desde asp) en donde pintabas los
registros de la BD y al usar
Response.ContentType = "application/vnd.ms-excel"
Entonces se crea el excel
Por ejemplo. (Mi primer campo del recordset es el que tiene los


números
que deben aparecer como texto)

<%@LANGUAGE="VBSCRIPT"%>
<% Option Explicit
Dim objConn, objRS, strProvider, SQL, I
Response.ContentType = "application/vnd.ms-excel ; name=Lista.xls"
Response.Addheader "Content-Disposition", "attachment;


filename=Lista.xls"
%>
<html>
<head>
<title>Ejemplo Excel</title>
</head>
<BODY>
<%
strProvider ="PROVIDER=MICROSOFT.JET.OLEDB.4.0;DATA SOURCE=" &
Server.MapPath("MiBase.mdb")
Set objConn = Server.CreateObject("ADODB.Connection")
Set objRS = Server.CreateObject("ADODB.Recordset")
objConn.Open strProvider
SQL = "SELECT lo que sea"
ObjRS.Open SQL, ObjConn, 3,1
%>
<table border=1 cellspacing=1 cellpadding=1 width="100%"
STYLE="font-size:10pt; text-align:center;">
<%
If objRS.EOF Then
Response.Write "<tr><td>No hay registros.</td></tr>"
Else ' Pintas los nombres de los campos
For I = 0 to (objRS.Fields.Count - 1)
Response.Write "<th><B>" & objRS(I).Name & "</B></th>"
Next
Response.Write "</tr>"
Do While Not ObjRS.EOF ' Pintas los valores
Response.Write "<tr>"
For I = 0 to (objRS.Fields.Count - 1)
if I = 0 Then ' ACA
Response.Write "<td
STYLE='vnd.ms-excel.numberformat:@'>" & objRS(I) & "</td>"
else
Response.Write "<td>" & objRS(I) & "</td>"
End If
Next
objRS.MoveNext
Loop
End If
objRS.close
objConn.close
set objRS = nothing
set objConn = nothing
%>
</table>
</body>
</html>

Sashka
MS MVP Access
MCP ASP.Net

"Cristian Muñoz Tello." escribió en el mensaje
news:
> Sashka:
>
> podrías detallar un poco.., ya que soy novato en ASP y coloque la
> instrucción tal cual y no me funciona.
>
> Específicamente lo que hice fue colocar el código con las comillas
> includías
> pero no me funciona.
>
> gracias.
>
> Cristián Muñoz Tello.
>
> "Sashka" escribió en el mensaje
> news:

-




-
>> ¡Importante!: Colabora con el grupo. Contesta a este mensaje y dinos si
>> te
>> sirvió o no la respuesta dada. Muchas gracias

-




-
>> Response.Write "<td STYLE='vnd.ms-excel.numberformat:@'>" & objRS(I) &
>> "</td>"
>>
>>
>> Sashka
>> MS MVP Access
>> MCP ASP.Net
>>
>> "Cristian Muñoz Tello." escribió en el mensaje
>> news:
>> > Disculpa:
>> >
>> > Esto en verdad no funciona ya probé está alternativa.
>> >
>> > Atte.
>> >
>> > Cristián Muñoz Tello.
>> >
>> >
>> >
>> > "Bulzar71" escribió en el mensaje
>> > news:
>> >> Hola cristian ..
>> >>
>> >> mira yo tenia el mismo problema lo solucione de la siguiente
>> >> manera
>> >>
>> >> response.Write(right(string(10,"0") & rs("variable"), 10))
>> >>
>> >>
>> >> "Cristian Muñoz Tello." escribió en el mensaje
>> >> news:
>> >> > Tengo una duda. Estoy utilizando la instrucción
>> >> >
>> >> > Response.ContentType = "application/vnd.ms-excel"
>> >> >
>> >> >
>> >> > y me hace bien el reporte, pero tengo unos datos de tipo cadena
>> >> > 0075000896, que cuando los veo en la página en excell me


elimina
> los
>> >> > ceros a la izquierda. Probé con ponerle ' y espacios en blanco


pero
> el
>> >> > cliente no me acepta el cambio.
>> >> >
>> >> > Atte.
>> >> >
>> >> > Cristián Muñoz Tello.
>> >> >
>> >> >
>> >>
>> >>
>> >
>> >
>>
>>
>
>


Respuesta Responder a este mensaje
#7 Sashka
20/11/2004 - 18:43 | Informe spam
¡Importante!: Colabora con el grupo. Contesta a este mensaje y dinos si te
sirvió o no la respuesta dada. Muchas gracias
:))
Como adicional. con numberformat:@ das formato de texto a lo que exista
en el campo, por ejemplo si el comienza con un = o un -, sin el
numberformat:@ excel interpretaría que es una formula y daría error por
otro lado, tambien puedes dar formato específico a los números... ej:
#,##0.00
Debo aclarar que además no sé si funcione con todas las versiones de excel,
ya que no lo he podido probar... funciona con 2000 y superior (que es lo que
he probado)

Sashka
MS MVP Access
MCP ASP.Net

"Cristian Muñoz Tello." escribió en el mensaje
news:
Sashka:

Muchas pero muchas. Ahora si me funcionó inmediatamente!!.

Saludos.

Cristián Muñoz Tello.
Serco Ltda.
www.serco.cl


"Sashka" escribió en el mensaje
news:O$
-
¡Importante!: Colabora con el grupo. Contesta a este mensaje y dinos si
te
sirvió o no la respuesta dada. Muchas gracias
Interpreté que creabas una tabla HTML (desde asp) en donde pintabas los
registros de la BD y al usar
Response.ContentType = "application/vnd.ms-excel"
Entonces se crea el excel
Por ejemplo. (Mi primer campo del recordset es el que tiene los


números
que deben aparecer como texto)

<%@LANGUAGE="VBSCRIPT"%>
<% Option Explicit
Dim objConn, objRS, strProvider, SQL, I
Response.ContentType = "application/vnd.ms-excel ; name=Lista.xls"
Response.Addheader "Content-Disposition", "attachment;


filename=Lista.xls"
%>
<html>
<head>
<title>Ejemplo Excel</title>
</head>
<BODY>
<%
strProvider ="PROVIDER=MICROSOFT.JET.OLEDB.4.0;DATA SOURCE=" &
Server.MapPath("MiBase.mdb")
Set objConn = Server.CreateObject("ADODB.Connection")
Set objRS = Server.CreateObject("ADODB.Recordset")
objConn.Open strProvider
SQL = "SELECT lo que sea"
ObjRS.Open SQL, ObjConn, 3,1
%>
<table border=1 cellspacing=1 cellpadding=1 width="100%"
STYLE="font-size:10pt; text-align:center;">
<%
If objRS.EOF Then
Response.Write "<tr><td>No hay registros.</td></tr>"
Else ' Pintas los nombres de los campos
For I = 0 to (objRS.Fields.Count - 1)
Response.Write "<th><B>" & objRS(I).Name & "</B></th>"
Next
Response.Write "</tr>"
Do While Not ObjRS.EOF ' Pintas los valores
Response.Write "<tr>"
For I = 0 to (objRS.Fields.Count - 1)
if I = 0 Then ' ACA
Response.Write "<td
STYLE='vnd.ms-excel.numberformat:@'>" & objRS(I) & "</td>"
else
Response.Write "<td>" & objRS(I) & "</td>"
End If
Next
objRS.MoveNext
Loop
End If
objRS.close
objConn.close
set objRS = nothing
set objConn = nothing
%>
</table>
</body>
</html>

Sashka
MS MVP Access
MCP ASP.Net

"Cristian Muñoz Tello." escribió en el mensaje
news:
> Sashka:
>
> podrías detallar un poco.., ya que soy novato en ASP y coloque la
> instrucción tal cual y no me funciona.
>
> Específicamente lo que hice fue colocar el código con las comillas
> includías
> pero no me funciona.
>
> gracias.
>
> Cristián Muñoz Tello.
>
> "Sashka" escribió en el mensaje
> news:

-




-
>> ¡Importante!: Colabora con el grupo. Contesta a este mensaje y dinos
>> si
>> te
>> sirvió o no la respuesta dada. Muchas gracias

-




-
>> Response.Write "<td STYLE='vnd.ms-excel.numberformat:@'>" & objRS(I) &
>> "</td>"
>>
>>
>> Sashka
>> MS MVP Access
>> MCP ASP.Net
>>
>> "Cristian Muñoz Tello." escribió en el mensaje
>> news:
>> > Disculpa:
>> >
>> > Esto en verdad no funciona ya probé está alternativa.
>> >
>> > Atte.
>> >
>> > Cristián Muñoz Tello.
>> >
>> >
>> >
>> > "Bulzar71" escribió en el mensaje
>> > news:
>> >> Hola cristian ..
>> >>
>> >> mira yo tenia el mismo problema lo solucione de la siguiente
>> >> manera
>> >>
>> >> response.Write(right(string(10,"0") & rs("variable"), 10))
>> >>
>> >>
>> >> "Cristian Muñoz Tello." escribió en el mensaje
>> >> news:
>> >> > Tengo una duda. Estoy utilizando la instrucción
>> >> >
>> >> > Response.ContentType = "application/vnd.ms-excel"
>> >> >
>> >> >
>> >> > y me hace bien el reporte, pero tengo unos datos de tipo cadena
>> >> > 0075000896, que cuando los veo en la página en excell me


elimina
> los
>> >> > ceros a la izquierda. Probé con ponerle ' y espacios en blanco


pero
> el
>> >> > cliente no me acepta el cambio.
>> >> >
>> >> > Atte.
>> >> >
>> >> > Cristián Muñoz Tello.
>> >> >
>> >> >
>> >>
>> >>
>> >
>> >
>>
>>
>
>






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