找回密码
 立即注册

QQ登录

只需一步,快速开始

ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2012-7-16 17:26:00
11#
sakeryu 你好

不知你是否方便留下电话号码,我想与你就该问题进行一次电话沟通。谢谢。
回复 使用道具 举报
sakeryu
初级会员   /  发表于:2012-7-17 10:09:00
12#
我们做了一个演示程序,附件中,请分析一下。

用程序打开我发的xls文件,选择表单的时候,上面文本框会显示当前表单的表头,头两张和主要指标表一都已经设置了表头的

使用保存按钮可以保存成新的xls文件,打开新的xls文件,可以发现主要指标表一的表头设置不见了。

另外,我们自己做的打印设置设置里面有一个的显示打印机对话框参数无法保存,即勾选后,打印时也不弹出打印机选择窗口。


Desktop.zip (59.82 KB, 下载次数: 137)
回复 使用道具 举报
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2012-7-17 10:13:00
13#
回复 10楼sakeryu的帖子

sakeryu 你好

从导出的Excel文件来看,确实没有RepeatRow属性,然而,使用Spread导出Excel文件时,如果设置了RepeatRowStart和RepeatRowEnd就应该正常导出这两个值。

现在Excel中没有这样的设置,如果只从Excel文件本身还无法找到原因,附件是我做的一个简单测试工程,设置了RepeatRowStart和RepeatRowEnd属性,然后导出为Excel文件,使用Excel打印时确实可以重复打印前六行。

现在我这边无法判断的就是,你代码中是否设置了RepeatRowStart和RepeatRowEnd,或者是以什么方式设置这两个属性,能否将你的代码发给我们看一看。我们担心的是如果通过fpSpread1.ActiveSheet.PrintInfo.RepeatRowStart方式来设置,只能设置一个SheetViewRepeatRowStart,而可能会遗忘其它SheetView的设置。

如果能将你的代码发给我们调试一下,我想调查起来会更快速些。

测试工程:VS2010 + Spread for WinForms 6.0.3505.2008 + Excel2003、Excel2007
导出的Excel使用Excel2003和2007都能够正常的在每一页重复打印前六行
5175_RepeatRow.zip (23.07 KB, 下载次数: 136)
回复 使用道具 举报
sakeryu
初级会员   /  发表于:2012-7-17 10:20:00
14#
刚刚我发了一个演示程序,你的回复是针对演示程序说的吗,还是针对之前我发的excel文件?
回复 使用道具 举报
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2012-7-17 10:22:00
15#
回复 12楼sakeryu的帖子

sakeryu 你好

非常感谢你发来的测试例子,通过该例子的确可以重现以上问题

该例子是一个可执行文件,能否将该工程的源代码发给我们,只通过现象很难判断问题的原因的。
回复 使用道具 举报
sakeryu
初级会员   /  发表于:2012-7-17 10:54:00
16#
这是刚才程序的源代码。另外我再说明一下,前面我说的打印对话框问题是指PrintInfo.ShowPrintDialog属性无法有效保存,当设置为true后,存为xls文件,重新打开发现仍然为false;另外JobName属性也属于同样情况。

FarSpreedLicense.rar

52.01 KB, 下载次数: 136

回复 使用道具 举报
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2012-7-17 17:14:00
17#
回复 16楼sakeryu的帖子

sakeryu 你好

请问你使用13楼中代码调试的情况怎么样。
回复 使用道具 举报
sakeryu
初级会员   /  发表于:2012-7-17 17:15:00
18#
我没有看13楼的代码
回复 使用道具 举报
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2012-7-18 09:13:00
19#
回复 18楼sakeryu的帖子

sakeryu 你好

我昨天对附件中的两个Excel文件进行了对比,我发现这两个Excel文件中并不是每个Sheet的PrintInfo都设置了RepeatRowStart 和 RepeatRowEnd 属性。
在Spread的帮助文档中的Print Settings Exported章节中并未列出RepeatRowStart 和 RepeatRowEnd 可以导出到Excel文件中,不过在一定条件下这两个属性设置是可以导出到Excel文件中的。

将这两个属性导出到Excel中有一个条件限制:需要设置RepeatRowStart 和 RepeatRowEnd 的Sheet必须连续出现在Excel文件的最前面,
也就是说如果希望将Sheet1、Sheet2、Sheet3和Sheet4中Sheet1、Sheet3的RepeatRowStart 和 RepeatRowEnd 设置导出到Excel中,那么Excel文件中各个Sheet的排列顺序应该是Sheet1、Sheet3、Sheet2、Sheet4;
如果Excle文件中各个Sheet的排列顺序是Sheet1、Sheet2、Sheet3、Sheet4,那么只能导出Sheet1的设置,Sheet3的设置就不会被导出。

所以,如果你将你Excel中设置了RepeatRowStart 和 RepeatRowEnd 的Sheet放到最前面,或者对所有Sheet都设置RepeatRowStart 和 RepeatRowEnd 属性,就可以正常导出这项设置了。
回复 使用道具 举报
sakeryu
初级会员   /  发表于:2012-7-18 09:39:00
20#
好的。我试试,也就是说每张表都要设置RepeatRowStart 和 RepeatRowEnd才行。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部