问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

.net 水晶报表。现在已经有DataSet数据源了,现在想要把DataSet导成xls文件。

发布网友 发布时间:2022-05-01 08:41

我来回答

2个回答

热心网友 时间:2023-10-10 00:17

你现在是要把报表导出吗?还是把DataSet导出?
报表导出的话。
saveFileDialog1.Filter = "Execl2003 files (*.xls)|*.xls|Word2003 files (*.doc)|*.doc|Execl2007 files (*.xlsx)|*.xlsx|Word2007 files (*.docx)|*.docx|PDF files (*.pdf)|*.pdf";
saveFileDialog1.FilterIndex = 1;
saveFileDialog1.RestoreDirectory = true;
saveFileDialog1.CreatePrompt = true;
saveFileDialog1.Title = "Export files to...";
DateTime now = DateTime.Now;
saveFileDialog1.FileName = now.Year.ToString().PadLeft(2) + now.Month.ToString().PadLeft(2, '0') + now.Day.ToString().PadLeft(2, '0') + "-" + now.Hour.ToString().PadLeft(2, '0') + now.Minute.ToString().PadLeft(2, '0') + now.Second.ToString().PadLeft(2, '0');
saveFileDialog1.ShowDialog();

if (saveFileDialog1.FileName != "")
{
#region 导出为2003版本的Excel或Word
if (saveFileDialog1.FilterIndex == 1 || saveFileDialog1.FilterIndex == 2)
{
Stream myStream;
myStream = saveFileDialog1.OpenFile();
StreamWriter sw = new StreamWriter(myStream, System.Text.Encoding.GetEncoding("gb2312"));
string str = "";
try
{
//写标题
for (int i = 0; i < dataGridView1.ColumnCount; i++)
{
if (i > 0)
{
str += "\t";
}
str += dataGridView1.Columns[i].HeaderText;
}
sw.WriteLine(str);
//写内容
for (int j = 0; j < dataGridView1.Rows.Count - 1; j++)
{
string tempStr = "";
for (int k = 0; k < dataGridView1.Columns.Count - 1; k++)
{
if (k > 0)
{
tempStr += "\t";
}
tempStr += dataGridView1.Rows[j].Cells[k].Value.ToString();
}
sw.WriteLine(tempStr);
}
sw.Close();
myStream.Close();
MessageBox.Show("文件已导出成功");
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
finally
{
sw.Close();
myStream.Close();
}
}
#endregion
#region 导出为2007版本的Excel
else if (saveFileDialog1.FilterIndex == 3)
{
Microsoft.Office.Interop.Excel.ApplicationClass MyExcel = new Microsoft.Office.Interop.Excel.ApplicationClass();
MyExcel.Visible = true;
if (MyExcel == null)
{
MessageBox.Show("EXCEL无法启动!", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
return;
}
int rowcount = 0;
int columncount = 0;
MyExcel.Application.Workbooks.Add(true);
columncount = this.dataGridView1.ColumnCount - 1;
rowcount = this.dataGridView1.RowCount - 1;
for (int m = 0; m < columncount; m++)
{
MyExcel.Cells[1, m + 1] = this.dataGridView1.Columns[m].HeaderText;
}
for (int i = 0; i < rowcount; i++)
{
for (int j = 0; j < columncount; j++)
{
MyExcel.Cells[i + 2, j + 1] = this.dataGridView1[j, i].Value.ToString();
}
}
}
#endregion
#region 导出为2007版本的Word
else if (saveFileDialog1.FilterIndex == 4)
{
Stream myStream;
myStream = saveFileDialog1.OpenFile();
StreamWriter sw = new StreamWriter(myStream, System.Text.Encoding.GetEncoding("gb2312"));
string str = "";
try
{
//写标题
for (int i = 0; i < dataGridView1.ColumnCount; i++)
{
if (i > 0)
{
str += "\t";
}
str += dataGridView1.Columns[i].HeaderText;
}
sw.WriteLine(str);
//写内容
for (int j = 0; j < dataGridView1.Rows.Count - 1; j++)
{
string tempStr = "";
for (int k = 0; k < dataGridView1.Columns.Count - 1; k++)
{
if (k > 0)
{
tempStr += "\t";
}
tempStr += dataGridView1.Rows[j].Cells[k].Value.ToString();
}
sw.WriteLine(tempStr);
}
sw.Close();
myStream.Close();
MessageBox.Show("文件已导出成功");
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
finally
{
sw.Close();
myStream.Close();
}
}
#endregion
#region 导出为PDF
else if (saveFileDialog1.FilterIndex == 5)
{
//设置导出字体
string FontPath = "C:\\WINDOWS\\Fonts\\simsun.ttc,1";
int FontSize = 12;

Boolean cc = false;
string strFileName;

strFileName = saveFileDialog1.FileName;

//初始化一个目标文档类
//Document document = new Document();
//竖排模式,大小为A4,四周边距均为25
iTextSharp.text.Document document = new iTextSharp.text.Document(PageSize.A4, 25, 25, 25, 25);
//横排模式,大小为A4,四周边距均为50
//Document doc = new Document(PageSize.A4.rotate(),50,50,50,50);

//调用PDF的写入方法流
//注意FileMode-Create表示如果目标文件不存在,则创建,如果已存在,则覆盖。
PdfWriter writer = PdfWriter.GetInstance(document, new FileStream(strFileName, FileMode.Create));

//创建PDF文档中的字体
BaseFont baseFont = BaseFont.CreateFont(
FontPath,
BaseFont.IDENTITY_H,
BaseFont.NOT_EMBEDDED);

//根据字体路径和字体大小属性创建字体
iTextSharp.text.Font font = new iTextSharp.text.Font(baseFont, FontSize);

//打开目标文档对象
document.Open();

//根据数据表内容创建一个PDF格式的表
PdfPTable table = new PdfPTable(dataGridView1.Columns.Count - 1);

for (int j = 0; j < dataGridView1.ColumnCount - 1; j++)
{
table.AddCell(new Phrase(dataGridView1.Columns[j].HeaderText, font));
}
//// 告诉程序这行是表头,这样页数大于1时程序会自动为你加上表头。
table.HeaderRows = 1;

//添加数据
//设置表体背景色
//遍历原gridview的数据行
for (int i = 0; i < dataGridView1.Rows.Count - 1; i++)
{
for (int j = 0; j < dataGridView1.Columns.Count - 1; j++)
{
try
{
table.AddCell(new Phrase(dataGridView1[j, i].Value.ToString(), font));
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
cc = true;
}
}
}
//在目标文档中添加转化后的表数据
document.Add(table);
//关闭目标文件
document.Close();
//关闭写入流
writer.Close();
// Dialog
if (!cc)
{
MessageBox.Show("文件已导出成功!", "生成成功", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
}
#endregion
}
else
{
MessageBox.Show("文件名不能为空!");
}
别忘记了上面

using Microsoft.Office.Interop.Excel;
using Microsoft.Office.Interop.Word;
要是是dataset 导出的话。
INSERT INTO OPENDATASOURCE('MICROSOFT.JET.OLEDB.4.0',

'Excel 5.0;DATABASE=c:\03-20.xls' )...[Sheet1$]
SELECT * FROM [1120].[dbo].[zwh_House_WEBDB] where
datediff(d,getOn,getdate())=0追问这个程序是运行在服务器上的,不可以使用OFFICE的插件。
我是要把一DataTable里的数据绘制成《线状统计图》,然后再导出到Excel文件里,现在就是不知道这个表怎么绘制.
我的横坐标是一个日期类型的日期
纵坐标是0~1000的数据
我设置的是on change of 为dataTime
show value(s) 为 一个int 类型的值。
现在不明白的是这个图怎么绘制,我的字段导出到EXCEL文件里都有值,但绘制成图表的时候值全是1了。图表是错的。

热心网友 时间:2023-10-10 00:17

用MSchart 控件绑定你的dataset。。然后会生成一张图片,找到这个路径 然后导出到xls 。不行吗追问你好,朋友,我用的是控制台应用程序,不可以用控件的。能再帮我分析一下吗?

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
...先讲女主的灵魂飘荡了一段时间,然后重生,请问是那本? 拯救者散热器怎么开 电脑如何一键还原系统电脑一键还原怎么操作 神舟笔记本电脑怎么重新设置神舟战神bios恢复出厂设置 神舟电脑恢复出厂设置神舟战神怎么恢复原厂系统 水泥楼梯如何铺木楼梯 家里面楼梯是水泥的不想铺地毯或者地砖还能铺什么 楼梯的水泥台阶上可以铺地板革吗 手机腾讯会议共享屏幕播放视频没声 腾讯会议共享屏幕没声音怎么办 怎么把水晶报表导出为excel 文件, 并同时打开该文件? 希望能给详细代码 如何把水晶报表导出到Excel文件源程序实例,C#net源代码编写 asp.net水晶报表导出Excel 怎么样让导出来的Excel 列与列 行与行 之间 没有空隙 Excel行号正确 如下图 制作水晶报表时怎样导出Excel格式不乱 详细03麻烦告诉我 水晶报表转成EXCEL问题,急!! 急:水晶报表如何转换成EXCEL,谢谢! SAP水晶报表,怎么录入EXCEL表格呢?求大神 K宝2代怎么用啊 2代k宝,怎么网上购物? 天地融二代K宝和天地融是一样吗?它们有什么区别是什么来的? 二代K宝客户是什么意思 农行k宝一代和二代有什么区别 带有冷凝管的有机合成装置检验气密性时是否需要打开冷凝水 往长颈漏斗里加水检查装置气密性的原理是什么啊 有什么测试方法能代替水检来测试密封性呢? 新电脑用u盘装系统反应很慢怎么回事 重装系统时速度很慢,这是怎么回事??? 电脑装系统时很慢是什么原因? 电脑装系统慢是什么原因啊 电脑装系统慢是什么原因 制作水晶报表时怎样导出Excel格式不乱 什么配置可以用虎牙开穿越火线直播 我想在虎牙直播CF求一套电脑配置清单,谢谢 虎牙 直播,怎么开,我想开直播穿越火线的 请问汉源九襄的手工宽面怎么做好吃,有些什么做法 宽面条怎么做? 手工面条~乌龙面的经典做法? 请问现在哪几家银行的信用卡好用?我想办两张信用卡 ,求推荐 谢谢了 同时办几张信用卡比较好啊?? 哪几家银行的信用卡比较好? 信用卡哪几家银行的比较好用? 哪几个银行的信用卡好 我是上海松江的电脑用户,我们这里IP地址是多少,还有DNS服务器地址? 我在上海电脑ip怎么显示的是浙江温州的 上海DNS服务器IP地址是? 炼乳的做法 炼乳可以用红糖做么先放牛奶还是糖牛奶入 用雀巢纯牛奶做炼乳,为什么会变成一锅渣? 上海有小米官网实体店吗? 上海小米专卖店地址查询 上海小米实体店在哪里有