主题:在vf中用代码实现EXCEL数字列汇总请教
zhengxinhai
[专家分:30] 发布于 2008-09-13 08:53:00
在vf中怎样用代码实现像在excel中实现数据汇总,并在最后一行增加汇总行?
moz老师用您的代码出错,请给看一下:
isdate( ) 是否日期类型
isnumeric( ) 是否数值类型
with Excel.Sheels(1) 此处出错
for i2=1 to 5
if Excel.isnumeric(.cells(16,i2)) 此处出错
.cells(16,i2)="=sum(R[-15]C:R[-1]C)" 此处出错
endif
endfor
endwith
用range("A16:E16")="=sum(R[-15]C:R[-1]C)"提示出错
回复列表 (共6个回复)
沙发
moz [专家分:37620] 发布于 2008-09-13 10:10:00
Sheets
板凳
zhengxinhai [专家分:30] 发布于 2008-09-13 10:28:00
moz老师,用range("A16:E16")="=sum(R[-15]C:R[-1]C)"为啥出错,请指教
3 楼
moz [专家分:37620] 发布于 2008-09-13 13:32:00
Excel.Sheets(1).range("A16:E16")="=sum(R[-15]C:R[-1]C)"
4 楼
cbl518 [专家分:57140] 发布于 2008-09-13 14:55:00
[quote]
with Excel.Sheels(1) 此处出错: [color=FF0000]对象引用错误![/color]
for i2=1 to 5
if Excel.isnumeric(.cells(16,i2)) 此处出错 [color=FF0000]没有isnumeric这个函数[/color]
.cells(16,i2)="=sum(R[-15]C:R[-1]C)" 此处出错 [color=FF0000]前面的对象引用错误[/color]
endif
endfor
endwith[/quote]
5 楼
cbl518 [专家分:57140] 发布于 2008-09-13 15:03:00
oE=CREATEOBJECT('Excel.application')
WITH oE
……打开或添加工作簿
.Worksheets(工作簿序号).Activate && 设置当前工作表(必须的)
.Visible=.T.
FOR i2=1 TO 5
IF .ISNUMBER(.cells(15,i2)) && 检测最后一行数据,是否是数字型的!
[color=FF0000] * IF VARTYPE(.cells(15,i2)) )="N" && 用这个比较好[/color]
.Range(CHR(64+i2)+"16").Formula="=sum(R[-15]C:R[-1]C)"
ENDIF
ENDFOR
endwith
6 楼
moz [专家分:37620] 发布于 2008-09-13 15:14:00
Excel.WorksheetFunction.IsNumber( )
我来回复