我试图使用由Visual Studio(windows窗体应用程序)提供的reportviewer
来创建基于Excel电子表格的报表。不过,我正在努力寻找读取/访问电子表格的正确方法。使用Excel电子表格作为报表查看器的数据源c#
当我尝试创建一个新的报告中,我得到了下面的窗口:
我试图使用对象的选择,但还没有任何运气
问题:如何我会使用Excel电子表格来创建报告吗?
我有一些运气以下代码这让我处理文件,但我不能找到一种方法,它扎入的ReportViewer:
Excel.Application ExcelObj = new Excel.Application();
this.openFileDialog1.FileName = "*.xls";
if (this.openFileDialog1.ShowDialog() == DialogResult.OK)
{
Excel.Workbook theWorkbook = ExcelObj.Workbooks.Open(
openFileDialog1.FileName, 0, true, 5,
"", "", true, Excel.XlPlatform.xlWindows, "\t", false, false,
0, true);
Excel.Sheets sheets = theWorkbook.Worksheets;
Excel.Worksheet worksheet = (Excel.Worksheet)sheets.get_Item(1);
for (int i = 1; i <= 10; i++)
{
Excel.Range range = worksheet.get_Range("A" + i.ToString(), "J" + i.ToString());
System.Array myvalues = (System.Array)range.Cells.Value;
string[] strArray = ConvertToStringArray(myvalues);
}
}
任何意见/指导,欢迎
并Excel工作表来自外部来源,或者你使用创造了它你的申请 ? –
@DTs需要使用外部来源,文件选择器或类似的东西 – RyanS
好的,所以我认为这种关系Excel工作表 - >报告是不可能的。你需要做的是确保使用excel数据填充DataTable,然后使用这个DataTable作为Report的数据源。因此,您的问题归结为两点:1)从Excel中填充DataTable(这与报告无关),2)使用DataTable作为报告数据源。 –