将Crystal报表导出到Excel(空行)

我正在尝试将报告导出为ex​​cel。 当我将报告导出到Excel时,每个细节部分之间都会出现空行。 我认为这是因为我有一个正常文本元素forms的上下文菜单覆盖“正常”文本元素。

有没有人有任何build议,我怎样才能停止发生空行? 仅当文本元素被导出到Excel时才可以禁止文本元素?

谢谢!

尽量使它紧凑。

每个对象之间应该没有空格。 您应该设置同一行上的每个对象具有相同的高度,列上的每个对象具有相同的宽度。

当对象之间存在空格时,它将在Excel中创build一个单元格。

肯哈马迪有两篇文章可能会有所帮助: http : //kenhamady.com/cru/archives/231 http://www.kenhamady.com/news0506.shtml (滚动到页面底部)

如果您使用的是表格数据,另一个select是使用像这个video中显示的报告扩展名: https : //www.youtube.com/watch?v=3hk6FJ1dvb4这种方法将使用Crystal报表作为数据源,将导出更好格式的网格中的数据。 该video使用第三方工具,但它是免费的 – http://www.r-tag.com/Pages/CommunityEdition.aspx

使用此代码:

Public Shared Sub ExportDataSetToExcel(ByVal ds As DataTable, ByVal filename As String) Dim response As HttpResponse = HttpContext.Current.Response response.Clear() response.Buffer = True response.Charset = "" response.ContentType = "application/vnd.ms-excel" Using sw As New StringWriter() Using htw As New HtmlTextWriter(sw) Dim dg As New DataGrid() dg.DataSource = ds dg.DataBind() dg.RenderControl(htw) response.Charset = "UTF-8" response.ContentEncoding = System.Text.Encoding.UTF8 response.BinaryWrite(System.Text.Encoding.UTF8.GetPreamble()) response.Output.Write(sw.ToString()) response.[End]() End Using End Using End Sub