Hi,
I have an aspx page which generates an excel document and transfers it to
the browser as attachment. Normally, once the document is transferred the
open save dialog prompts to open or save the excel document. When I click
save I can save the excel document or when I click open it directly opens in
excel. This works fine for all but one machine.
On one machine however the dialog prompts to open or save the excel document
(e.g. myexcel.xls) but when I click save, the filename textbox contains the
name of the page (mypage.aspx) instead of the excel document. When I save
now the document, not the excel document but really the page's html is saved
on disk.
All machines are set up with
Windows 2000 SP2
Excel 9.0.3821 SR-1 (Excel 2000)
Internet Explorer 6.0.2800.1106CO
Can somebody help?
Kind regards,
Michael
Alper OZGUR - 15 Feb 2006 13:44 GMT
What is the other machines excel version?
"Michael Groeger" <google.news@web.de>, haber iletisinde þunlarý
yazdý:unTGUSjMGHA.3432@tk2msftngp13.phx.gbl...
> Hi,
>
[quoted text clipped - 24 lines]
> Kind regards,
> Michael
Michael Groeger - 15 Feb 2006 14:09 GMT
They are all the same as stated below.
> What is the other machines excel version?
>
[quoted text clipped - 28 lines]
> > Kind regards,
> > Michael
Alper OZGUR - 15 Feb 2006 15:02 GMT
I had the same problem and changed the code as belows. This had solved my
problem...
I hope it helps...
Response.Clear()
Response.Charset = ""
Response.ContentType = "application/vnd.ms-excel"
Dim stringWrite As New System.IO.StringWriter
Dim htmlWrite As New System.Web.UI.HtmlTextWriter(stringWrite)
Dim dg As New DataGrid
dg.DataSource = dsExp.Tables(0) ' dsExp is the dataset
dg.DataBind()
dg.GridLines = GridLines.Both
dg.HeaderStyle.Font.Bold = True
dg.DataBind()
Dim Img As New System.Web.UI.WebControls.Image
Img.ImageUrl = "images/reportlogo.jpg"
Img.RenderControl(htmlWrite)
dg.RenderControl(htmlWrite)
Response.Write("<html><head><META HTTP-EQUIV=""Content-Type""
CONTENT=""text/html; charset=utf-8""></head><body>" & stringWrite.ToString &
"</html></body>")
Response.End()
"Michael Groeger" <google.news@web.de>, haber iletisinde þunlarý
yazdý:uTwcZtjMGHA.344@TK2MSFTNGP11.phx.gbl...
> They are all the same as stated below.
>
[quoted text clipped - 35 lines]
>> > Kind regards,
>> > Michael
Michael Groeger - 16 Feb 2006 10:27 GMT
That's all done by a third party tool (Aspose.Excel) so I can't do that.
> I had the same problem and changed the code as belows. This had solved my
> problem...
[quoted text clipped - 78 lines]
> >> > Kind regards,
> >> > Michael
Steve C. Orr - 15 Feb 2006 19:05 GMT
I suspect you're missing one of these key lines of code:
Response.Clear()
Response.ContentType = "application/ms-excel"
Response.AddHeader("Content-Disposition", _
"inline;filename=test.xls")
I've outlined all the necessary steps to do a proper Excel export here:
http://SteveOrr.net/articles/ExcelExport.aspx

Signature
I hope this helps,
Steve C. Orr
MCSD, MVP
http://SteveOrr.net
> Hi,
>
[quoted text clipped - 20 lines]
> Kind regards,
> Michael
Michael Groeger - 16 Feb 2006 10:26 GMT
Hi Steve,
the excel generation and the transfer to the client is done by a third party
tool (Aspose.Excel). I think the content - type is set to ms-excel, but i am
not quite sure. As the problem happens only on one machine I think it has
something to do with machine settings rather than with coding.
Regards,
Michael
> I suspect you're missing one of these key lines of code:
> Response.Clear()
[quoted text clipped - 37 lines]
> > Kind regards,
> > Michael