楼上的思路不错。但是有个不确定的因素:用户想显示或打印的字段不确定,要根据用户的需要而选择字段。所以固定的EXCEL格式不可取。
我的解决办法:
标题:用VFP生成EXCEL后,再第一行前插入一行,再算出总列数--合并--变量填入标题名--居中
每页的行数:用VFP生成EXCEL后,算出总行数--计算每页行数的倍数(不足倍数加空行)--插入分页符--插入页脚
*-----------设置标题栏
WCB_excel.Rows(1).Insert() &&在第一行前面插入一行
ROW=WCB_excel.sheets(1).UsedRange.ROWS.COUNT
&&有数据的总行数
COLUM=WCB_excel.sheets(1).UsedRange.COLUMNS.COUNT &&有数据的总列数
*------------取得总列数合并
IF COLUM<=25
ZCOLUM="ABCDEFGHIJKLMNOPQRSTUVWXYZ"
&& &&设置25个列,用SUBstr()截取列符号,A,B,C,D....
lfh=ALLTRIM(SUBSTR(ZCOLUM,colum,1))
ELSE
ZCOLUM="A B C D E F G H I J K L M N O P Q R S T U V W X Y ZAAABACADAEAFAGAHAIAJAKALAMANAOAPAQARASATAUAVAWAXAYAZ"
&&注意:Z后面减去空格。设置50个列,用SUBstr()截取列符号,AA,AB,AC,AD...
lfh=ALLTRIM(SUBSTR(ZCOLUM,2*colum,2))
ENDIF
dygfh="A1:"+LFH+"1"
WCB_excel.range(dygfh).Select
&&选择标题栏所在单元格
WCB_excel.Selection.Merge
&&合并单元格
With WCB_excel.range("A1 ")
&&设置标题及字体属性
.value='政府采购数据查询表一'
&&可用变量替换
.Font.Name="黑体"
.Font.size=18
.horizontalAlignment = 3
&& 水平居中排列
ENDwith
*-----------
[
本帖最后由 YZCZWCB 于 2010-1-16 12:02 编辑 ]