Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Fernando Santos_159329

Gerar excel

Recommended Posts

use componente pra isso, pois apenas alterar o contenttype apenas exibe os dados, existem vários, um muito usado é o Excel.Application ou OWC e dá uma olhada aqui

Compartilhar este post


Link para o post
Compartilhar em outros sites

use componente pra isso, pois apenas alterar o contenttype apenas exibe os dados, existem vários, um muito usado é o Excel.Application ou OWC e dá uma olhada aqui

 

Mas qual o problemas é usar o Response.ContentType = "application/vnd.ms-excel" ?

 

Usar componente nem sempre é possível no servidor de hospedagem, isso limita nossas possibilidades.

 

Só queria saber como acertar o tamanho da coluna !

Compartilhar este post


Link para o post
Compartilhar em outros sites

olha este exemplo:

 

<%@ Language=VBScript %>
<%
   
   Response.Buffer = TRUE
   Response.ContentType = "application/vnd.ms-excel"
%>
<HTML>
<BODY>
Texto.<p>
<%
   ' ADO
   dim myConnection
   set myConnection = CreateObject("ADODB.Connection")
   
   ' conexao...
   ' myConnection.Open "DSN=pubs;UID=sa"
   
   ' SQL...
   sqlStr = "SELECT au_fname,au_lname,phone FROM authors"
   set rsAuthors =  myConnection.Execute(sqlStr)
%>

<!-- tabela, na planilha do Excel -->
<TABLE WIDTH=75% BORDER=1 CELLSPACING=1 CELLPADDING=1>
<TR>
   <TD><font size=+2>First Name</font></TD>
   <TD><font size=+2>Last Name</font></TD>
   <TD><font size=+2>Phone</font></TD>
</TR>
<!-- server-side loop Table -->
<% do while not rsAuthors.EOF %>
<TR>
   <TD><%=rsAuthors("au_fname")%></TD>
   <TD><%=rsAuthors("au_lname")%></TD>
   <TD><%=rsAuthors("phone")%></TD>
</TR>
<% rsAuthors.MoveNext
   loop
    rsAuthors.Close
   set rsAuthors = Nothing
   myConnection.Close
   set myConnection = Nothing
%>
</TABLE>
</BODY>
</HTML>
		

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá Fernando,

 

Segue mais uma opção abaixo, usando Microsoft.Office.Interop.Excel:

 

            wb.Sheets[1].Columns("B:B").ColumnWidth = 120;
            wb.Sheets[1].Rows("3:6").RowHeight = 60;
            wb.Sheets[1].Range("B:B").EntireColumn.Font.Name = "Calibri";
            wb.Sheets[1].Range("B:B").EntireColumn.Font.Size = 18;
            wb.Sheets[1].Range("B:B").WrapText = true;
            wb.Sheets[2].Range("A:X").EntireColumn.AutoFit();

 

Dá uma olhada neste post, talvez ajude...

 

http://ef3cinco.com/2013/12/11/quickie-como-exportar-dataset-para-arquivo-excel-usando-asp-net-c-sharp/

 

 

- Julien Sorel

 

ef3cinco.com | Programação - não importa a linguagem.

 

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

 

olha este exemplo:

 

<%@ Language=VBScript %>
<%
   
   Response.Buffer = TRUE
   Response.ContentType = "application/vnd.ms-excel"
%>
<HTML>
<BODY>
Texto.<p>
<%
   ' ADO
   dim myConnection
   set myConnection = CreateObject("ADODB.Connection")
   
   ' conexao...
   ' myConnection.Open "DSN=pubs;UID=sa"
   
   ' SQL...
   sqlStr = "SELECT au_fname,au_lname,phone FROM authors"
   set rsAuthors =  myConnection.Execute(sqlStr)
%>

<!-- tabela, na planilha do Excel -->
<TABLE WIDTH=75% BORDER=1 CELLSPACING=1 CELLPADDING=1>
<TR>
   <TD><font size=+2>First Name</font></TD>
   <TD><font size=+2>Last Name</font></TD>
   <TD><font size=+2>Phone</font></TD>
</TR>
<!-- server-side loop Table -->
<% do while not rsAuthors.EOF %>
<TR>
   <TD><%=rsAuthors("au_fname")%></TD>
   <TD><%=rsAuthors("au_lname")%></TD>
   <TD><%=rsAuthors("phone")%></TD>
</TR>
<% rsAuthors.MoveNext
   loop
    rsAuthors.Close
   set rsAuthors = Nothing
   myConnection.Close
   set myConnection = Nothing
%>
</TABLE>
</BODY>
</HTML>
		

Mas aqui não está fixando o tamanho das colunas !

Compartilhar este post


Link para o post
Compartilhar em outros sites

ele gera algum erro ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fernando seu exemplo define a largura da tabela coloque em cada TD que são as colunas!!

 

exemplo

 

<TABLE WIDTH=75% BORDER=1 CELLSPACING=1 CELLPADDING=1>
<TR>
<TD width="15%"><font size=+2>First Name</font></TD>
<TD ><font size=+2>Last Name</font></TD>
<TD ><font size=+2>Phone</font></TD>
</TR>
<!-- server-side loop Table -->
<% do while not rsAuthors.EOF %>
<TR>
<TD width="15%"><%=rsAuthors("au_fname")%></TD>
<TD><%=rsAuthors("au_lname")%></TD>
<TD><%=rsAuthors("phone")%></TD>
</TR>
<% rsAuthors.MoveNext
loop
rsAuthors.Close
set rsAuthors = Nothing
myConnection.Close
set myConnection = Nothing
%>
</TABLE>

 

 

no caso aqui defini somente a primeira coluna!!!

 

Sucesso!



Fernando lendo seu post

 

Sim... fiz com table

 

Porém o width não está funcionando, nem em %, nem em px.

 

<td widht="200px"> ou <td widht="60%"> não funciona

lendo esse seu post vc colocou widHT e é widTH deve ser por isso que não funcionou!!

 

Sucesso!

Compartilhar este post


Link para o post
Compartilhar em outros sites

provavelmente é o erro de sintaxe mesmo esta errado o widht coloque WIDTH

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.