Export to Excel --but also Set Print Area

Discussion in 'ASP .Net Building Controls' started by Plateriot, Mar 8, 2009.

  1. Plateriot

    Plateriot Guest

    I have a handy routine I tweaked from an example that Exports an Excel from a

    It's almost perfect except for the fact that I'd also like to set the page
    to fit as many columns wide to each page. - For example, I have some
    gridviews that have data in 12 columns, but only 10 make it in the printout,
    so I get the broken overflow into undesired pages.

    So of course, the header will need to repeat in those other pages.

    Is there a way to set this in the code below? Or do I need to break out an
    Excel Object model for dot net?

    Public Shared Sub ExcelExport(ByVal gv As GridView, ByVal strFileName As
    'Exports an Excel spreadsheet of the named 'gv' gridview with the
    named strFileName

    'Requires this at the top of the module:
    'Public Overrides Sub VerifyRenderingInServerForm(ByVal control As
    ' empty, needed for export2Excel to work.
    'End Sub

    "attachment;filename=" & strFileName & ".xls")
    HttpContext.Current.Response.Charset = ""

    HttpContext.Current.Response.ContentType = "application/vnd.xls"

    Dim stringWrite As New System.IO.StringWriter()
    Dim htmlWrite As System.Web.UI.HtmlTextWriter = New

    stringWrite.Write("<html><head><meta http-equiv=""content-type""
    content=""text/html; charset=utf-8""></head><body>")
    'Temporariilly remove paging and sorting to allow for plain
    formatting of
    gv.AllowPaging = False
    gv.AllowSorting = False



    End Sub
    Plateriot, Mar 8, 2009
    1. Advertisements

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.