导出DBGrid到Excel时,若列数未定,如何合并表头的两格?
在导出的Excel中,列数由第二个数据源中的纪录决定。当记录数很多时,Excel的列也会很多,如果要合并表头以达到多层表头的目的。那么,应该如何使用merge语句?其中区域的表达式应该怎么写? 问题点数:100、回复次数:9Top
1 楼zjhydx98(tourist)回复于 2003-03-04 10:53:12 得分 0
做一份excel模板,用的时候copy这份模板,在插入数据
Top
2 楼filix(传说中的卷心菜)回复于 2003-03-04 17:53:19 得分 0
那不是太痛苦?问题是怎么表达形如'CB1'这样的区域?Top
3 楼filix(传说中的卷心菜)回复于 2003-03-08 23:28:19 得分 0
难道就没人碰到过这样的问题吗?Top
4 楼miaofeng7802()回复于 2003-03-11 11:06:41 得分 0
我碰过,用Excel读写控件来处理,很简单
下载www.cellsoft.ccTop
5 楼filix(传说中的卷心菜)回复于 2003-03-16 16:13:44 得分 0
不要用另外的控件,其实我想问的就是:在操作Excel时,如果列数很多,那么在合并单元格时如何表示范围:如range('AB1','CC2').merge里面的'AB'和'CC'该如何用数字表示?Top
6 楼logtls(LiSonTu)回复于 2003-03-18 16:23:58 得分 100
Excel.Range['A'+inttostr(H_I)+':'+ColumnName(L_J)+'1'].Select;
Excel.Range['A'+inttostr(H_I)+':'+ColumnName(L_J)+'1'].Merge;
'A'可动态转换
function ColumnName(LM_I :integer):string;
begin
if LM_I<=26 then Result :=Chr(Ord(64+LM_I))
else
Result :=ColumnName((LM_I-1) div 26)+ColumnName(((LM_I-1) mod 26)+1);
end;
给分吧!Top
7 楼filix(传说中的卷心菜)回复于 2003-03-18 19:37:44 得分 0
我试试,,如果有效,马上给分Top
8 楼filix(传说中的卷心菜)回复于 2003-03-18 19:50:55 得分 0
给分!另外有一个问题:在officeXp环境中,设置打印表头行(就是重复打印的表头行)是怎么做的?
我用excel.activesheet.pagesetup.titlerows := '$1:$3'提示说不支持pagesetup属性Top
9 楼logtls(LiSonTu)回复于 2003-03-19 11:23:33 得分 0
先给分!**********Top




