ActiveReport for .net 出力Excel文件的问题

coldtiny 2005-12-29 04:06:27
我用ActiveReport出力Excel文件,在rpx模板上设置的格式,但出力出来的Excel
文件看起来特别乱:
我是这样做的
这是我写的excel处理代码:
private void Form1_Load(object sender, System.EventArgs e)
{
rptExports rpt = new rptExports();
this.viewer1.Document = rpt.Document;
rpt.Run(false);

xlsExport1.AutoRowHeight = true;
xlsExport1.DisplayGridLines = true;
xlsExport1.FileFormat = DataDynamics.ActiveReports.Export.Xls.FileFormat.Xls97Plus;
xlsExport1.MinColumnWidth = 360;
xlsExport1.MinRowHeight = 250;
xlsExport1.MultiSheet = true;
xlsExport1.RemoveVerticalSpace = true;
xlsExport1.UseCellMerging = false;

xlsExport1.Export(rpt.Document, "D:\\x.xls");
}

XlsExport这个控件本身只能设置上面几种属性,我想在向让Excel出力的格式和rpx模板文件一样,而且还能设置Excel边框之类的
下面是设置Excel属性的:
private void Form1_Load(object sender, System.EventArgs e)
{
DataDynamics.SpreadBuilder.Workbook sb = new DataDynamics.SpreadBuilder.Workbook();
sb.Sheets.AddNew();
sb.Sheets[0].Name = "Customer Call List";
sb.Sheets[0].Columns(0).Width = 2 * 1440;
sb.Sheets[0].Columns(1).Width = 1440;
sb.Sheets[0].Columns(2).Width = 1440;
sb.Sheets[0].Rows(0).Height = 1440/4;
sb.Sheets[0].Cell(0,0).SetValue("会社名");
sb.Sheets[0].Cell(0,0).FontName = "MS UI Gothic";
sb.Sheets[0].Cell(0,0).FontBold = true;
sb.Sheets[0].Cell(0,1).SetValue("部署名");
sb.Sheets[0].Cell(0,1).FontName = "MS UI Gothic";
sb.Sheets[0].Cell(0,1).FontBold = true;
sb.Sheets[0].Cell(0,2).SetValue("電話番号");
sb.Sheets[0].Cell(0,2).FontName = "MS UI Gothic";
sb.Sheets[0].Cell(0,2).FontBold = true;
sb.Sheets[0].Cell(1,0).SetValue("グレープシティ");
sb.Sheets[0].Cell(1,0).FontName = "MS UI Gothic";
sb.Sheets[0].Cell(1,1).SetValue("営業部");
sb.Sheets[0].Cell(1,1).FontName = "MS UI Gothic";
sb.Sheets[0].Cell(1,2).SetValue("(022) 777-8210");
sb.Save (Application.StartupPath + @"\x.xls");
MessageBox.Show(Application.StartupPath + @"\x.xls" + "へ保存しました。");
}
怎样才能保证模板上的那一块出力到Excel哪一块,还有牵扯到跨行等问题,比如说,我在report模板上面一个textbox值,想出力到excel上,我想让它规定处理到那一行哪一列,跨几行,跨几列,等,如何解决~
这方面资料很少,还有,哪位兄弟有关于ActiveReport for .net中文帮组文档。急呀!我开始装的是中文版,在开始菜单里看不见,没有帮组文档,现在用的是日文的,看不懂,那位兄弟棒下忙 多谢了!~~~~~~~~
...全文
195 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
jewith 2006-07-04
  • 打赏
  • 举报
回复
能给我一个中文的ACTIVEREPORT.NET控件吗?
哪里能下载?
luoyi107 2006-02-08
  • 打赏
  • 举报
回复
关注中.....
hanakim 2006-01-26
  • 打赏
  • 举报
回复
翻译:

叙述能力有限,但是基本上就是这个意思

XlsExport类,把一个TextBox或者一个Label控件出力在一个cell.
这些东西,出力在网格的时候,请调整控件的位置,大小。
比如说,在某个TextBox上面重叠别的TextBox或者, 并排的两个TextBox高度一个0。488英寸,一个0。447英寸的时候,Excel的单元格位置错开的可能性是有的。这个时候,Textbox之间不要重叠,或者请调整一下高度。
虽然[レポートの設定」---[グローバル設定]-[ルーラの単位]的设定里面表示成英寸或者是厘米,但是实际上RPX文件内保存的单位是Twips。因此用在「レポート設定」--「コントロールをグリッドに合わせる」里设定的状态,drag控件的时候, 或者从英寸或者是厘米转换成Twips的时候,会发生小数点以下的误差。所以,即使在属性里面设定同样的控件高度,也有可能存在RPX的文件里面的实际的高度不一样的情况,导致影响Excel的cell的位置和高度。属性里面设置同样的高度,但是export到Excel的时单元格的高度错开的时候,请先把空间的位置或者是大小设成别的值,然后再改过来,或者用Texteditor把RPX内的内容直接编辑。
carl_8888 2006-01-25
  • 打赏
  • 举报
回复
你说我不怎么清楚.,没看懂意思,,

反正 ActiveReport 我知道是非常简单的. 你说清楚的.我来解决
coldtiny 2006-01-04
  • 打赏
  • 举报
回复
伤心加失望再加沮丧
coldtiny 2005-12-30
  • 打赏
  • 举报
回复
难道真的没人用个这个吗 好失望:(
coldtiny 2005-12-29
  • 打赏
  • 举报
回复
下面是日文帮组文档上关于这方面的一些介绍,本人日语有限,有哪位大虾帮我翻译一些 不胜感激,


XlsExportクラスは、基本的に1つのTextBoxやLabelコントロールを1つのセルへ出力します。これらが、グリッドへ出力した場合に整列するように、コントロールの位置(Top,Left)やサイズ(Height,Width)を調整してください。

例えば、あるTextBox上に別のTextBoxが重なって配置されていたり、並べて配置している2つのTextBoxの高さが、一方では「0.488インチ」もう一方では「0.447インチ」などのようにずれがある場合などに、Excel上でセルの位置がずれる可能性があります。このような場合は、TextBox同士が重ならないように配置したり、高さを揃えるなどの調整を行ってください。

デザイナ上のコントロールの位置や高さは、「レポートの設定」ダイアログの[グローバル設定]-[ルーラの単位]で設定されたインチやcm単位で表示されますが、実際にRPXファイル内に保存される(レポート生成時に使用される)情報の単位は、Twips単位(1インチ=1440Twips)となります。そのため、「レポート設定」ダイアログ上で「コントロールをグリッドに合わせる」に設定されている状態でコントロールをドラッグした場合など、インチ(cm)からTwips単位への換算が行われる段階で小数点以下の誤差が発生することがあります。その結果、プロパティウィンドウ上で同じ高さに設定されているコントロールでも、RPXファイルに実際に記述されている高さが異なってしまい、結果的にExcel上でのセル位置や高さに影響を与えてしまう可能性があります。プロパティウィンドウ上でコントロールを同じ高さに設定しているにもかかわらず、Excelエクスポート時にセルの高さがずれるという場合は、コントロールの位置やサイズを一旦別の値に設定した上で、再度統一して設定し直すか、RPXファイル内の記述をテキストエディタで直接編集してください。

4,819

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 图表区
社区管理员
  • 图表区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧