ASP.NET导出到Excel - 锁定单元格

时间:2011-05-04 22:28:13

标签: asp.net vb.net excel office-interop

我想将我在网页上的表格导出到Excel文件并锁定新文件中的某些单元格。这是我目前的代码:

Protected Sub btnExportToExcel_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnExportToExcel.Click
    Response.Clear()
    Response.Buffer = True
    Response.ContentType = "application/vnd.ms-excel"
    Response.AddHeader("content-disposition", "attachment;filename=EpicSearchResults.xls")
    Response.Charset = ""
    Me.EnableViewState = False

    Dim sw As New System.IO.StringWriter()
    Dim htw As New System.Web.UI.HtmlTextWriter(sw)

    Session("tblResults").RenderControl(htw)

    Response.Write(sw.ToString())
    Response.End()
End Sub

此代码适用于生成Excel文件。我搜索了一个无法找到解决锁定新文件中的单元格的问题。在此先感谢您的帮助!

2 个答案:

答案 0 :(得分:4)

像Leniel所说,你可能需要一个更好的图书馆。您可以查看的另一个是EPPlus。非常有效。

EPPlus锁定单元格中的代码是worksheet.Cells["A1:G60"].Style.Locked = true;

答案 1 :(得分:2)

我认为你需要一个更强大的库来做你想做的事。这涉及更改当前将数据导出到Excel的方式。

看看NPOI:http://npoi.codeplex.com/discussions/252597

参考文献:

Create Excel (.XLS and .XLSX) file from C#