C# 怎么导出Datatable中的图片列到Excel中
C# 如何导出Datatable中的图片列到Excel中,在线等
我用C#导出Datatable中的数据到Excel,其中有一列是图片,不知该如何导,网上查的资料看不懂,VS2010 + Excel2010
------解决方案--------------------
http://bbs.****.net/topics/230066829
------解决方案--------------------
这是我昨天做的。你看一下咯。
System.Data.DataTable dataTable = dataSet.Tables[0];
int rowNumber = dataTable.Rows.Count;
int columnNumber = dataTable.Columns.Count;
if (rowNumber == 0)
{
MessageBox.Show("没有任何数据可以导入到Excel文件!");
return false;
}
//建立Excel对象
Microsoft.Office.Interop.Excel.Application excel = new Microsoft.Office.Interop.Excel.Application();
Workbook xlbook = excel.Application.Workbooks.Add(true);
Worksheet xlsheet = (Worksheet)xlbook.Worksheets[1];
xlsheet.Name = "库存报表";
//表头样式
excel.ActiveSheet.Rows[2].Font.Name = "隶书";
excel.ActiveSheet.Rows[2].Font.Bold = true;
excel.ActiveSheet.Rows[2].Font.Size = 20;
//excel.ActiveSheet.Rows[2].Font.UnderLine = true;
//列名样式
excel.ActiveSheet.Rows[7].Font.Name = "隶书";
excel.ActiveSheet.Rows[7].Font.Bold = true;
//excel.ActiveSheet.Rows[7].Font.UnderLine = true;
int colIndex = 0;
int RowIndex = 7;
excel.Cells[2, 7] = "深圳市********有限公司";
excel.Cells[4, 1] = "客户名称:";
excel.Cells[4, 3] = this.UCSelectCoagent.Text;
excel.Cells[4, 8] = "所在仓库:";
excel.Cells[4, 10] = this.CMBWareAddress.Text;
excel.Cells[5, 1] = "库存截止时间:";
excel.Cells[5, 3] = DateTime.Now.Year + "-" + DateTime.Now.Month + "-" + DateTime.Now.Day;
excel.Cells[5, 8] = "报表生成时间:";
excel.Cells[5, 10] = DateTime.Now.Year + "-" + DateTime.Now.Month + "-" + DateTime.Now.Day;
//开始写入每列的标题
foreach (DataColumn dc in dataTable.Columns)
{
colIndex++;
excel.Cells[RowIndex, colIndex] = dc.Caption;
}
//填充数据
for (int c = 0; c < rowNumber; c++)
{
for (int j = 0; j < columnNumber; j++)
{
excel.Cells[RowIndex + 1, j + 1] = dataTable.Rows[c].ItemArray[j];
}
我用C#导出Datatable中的数据到Excel,其中有一列是图片,不知该如何导,网上查的资料看不懂,VS2010 + Excel2010
------解决方案--------------------
http://bbs.****.net/topics/230066829
------解决方案--------------------
这是我昨天做的。你看一下咯。
System.Data.DataTable dataTable = dataSet.Tables[0];
int rowNumber = dataTable.Rows.Count;
int columnNumber = dataTable.Columns.Count;
if (rowNumber == 0)
{
MessageBox.Show("没有任何数据可以导入到Excel文件!");
return false;
}
//建立Excel对象
Microsoft.Office.Interop.Excel.Application excel = new Microsoft.Office.Interop.Excel.Application();
Workbook xlbook = excel.Application.Workbooks.Add(true);
Worksheet xlsheet = (Worksheet)xlbook.Worksheets[1];
xlsheet.Name = "库存报表";
//表头样式
excel.ActiveSheet.Rows[2].Font.Name = "隶书";
excel.ActiveSheet.Rows[2].Font.Bold = true;
excel.ActiveSheet.Rows[2].Font.Size = 20;
//excel.ActiveSheet.Rows[2].Font.UnderLine = true;
//列名样式
excel.ActiveSheet.Rows[7].Font.Name = "隶书";
excel.ActiveSheet.Rows[7].Font.Bold = true;
//excel.ActiveSheet.Rows[7].Font.UnderLine = true;
int colIndex = 0;
int RowIndex = 7;
excel.Cells[2, 7] = "深圳市********有限公司";
excel.Cells[4, 1] = "客户名称:";
excel.Cells[4, 3] = this.UCSelectCoagent.Text;
excel.Cells[4, 8] = "所在仓库:";
excel.Cells[4, 10] = this.CMBWareAddress.Text;
excel.Cells[5, 1] = "库存截止时间:";
excel.Cells[5, 3] = DateTime.Now.Year + "-" + DateTime.Now.Month + "-" + DateTime.Now.Day;
excel.Cells[5, 8] = "报表生成时间:";
excel.Cells[5, 10] = DateTime.Now.Year + "-" + DateTime.Now.Month + "-" + DateTime.Now.Day;
//开始写入每列的标题
foreach (DataColumn dc in dataTable.Columns)
{
colIndex++;
excel.Cells[RowIndex, colIndex] = dc.Caption;
}
//填充数据
for (int c = 0; c < rowNumber; c++)
{
for (int j = 0; j < columnNumber; j++)
{
excel.Cells[RowIndex + 1, j + 1] = dataTable.Rows[c].ItemArray[j];
}