以下是引用lxl在2010-4-25 10:04:00的发言:
选择不连续的行不是做不到,但是这样做会牺牲更多别的功能。
table选定区域的相关一些功能会变得不好用那。
比如处理以前选中连续的几行
处理时只需要 For i As Integer = CurrentTable.TopRow To CurrentTable.BottomRow
如果选中行变的不连续,实现这样的功能就会很麻烦。
不过, 你说的加一个复选框辅助列 来实现不连续打印很容易实现,也不需要筛选。
只需要在excel模板里面添加打印条件 print = true 就可以了
这种我知道,但在有时候是不太方便的。例如,我在打印员工档案卡时,有多种打印方式:打印所有行;打印当前行;打印选定的多行等等,如果照这种思路解决,每种不同的条件打印,就需要一个独立的Excel模板文件,这是很不方便的,(好像用报表事件也不是太方便),所以我希望有更好的解决办法。
如果把目前的select直接改成允许选择不连续的区域,好像会带来副作用。但我的建议是,能否采用以下两种办法中的一种,或者谁有更好的解决办法:
(1)能否直接根据一个行集合生成Excel报表,这种方式下生成Excel报表不再使用select选择行(为了和以前的程序保持兼容,原来的根据select选择行生成Excel报表的方式可以继续保留,这并不冲突!)
(2)能否再针对Excel报表专门有一个方法来选择Table中不连续的多行,然后根据这不连续的多行生成Excel报表。