pb从excel读数据。
实现通过PB来读取excel中某一行某一列的数据。
我在相关论坛上找到了一个例子,但其中的怎么申明,怎么调用还不太明白,例子如下:
读excel的代码:
ole1.workbooks.open(ls_pathname,0,0)
ole1.visible = true
//获取EXCEL单元格数据
ls_cell = ole1.workbooks[1].worksheets[1].cells(ll_rowno,ll_colno).value
各位可否通过一个实例进行说明呢?
谢谢了!
NO.1 作者: Hanson_bati_zhu
试试看
这个是用PB自带的例子改的
integer result
OLEObject myoleobject
myoleobject = CREATE OLEObject
result = myoleobject.ConnectToObject("现有的EXCEL文件名")
IF result = 0 THEN
MessageBox(,String(myoleobject.application.workbooks(1).worksheets(1).cells(行号,列号).value))
END IF
myoleobject.DisconnectObject()
DESTROY myoleobject
NO.2 作者: xiaozhigood
上面的写的太仓促 你可以看这个就可以了
//从excel文件获得数据
//建立从EXCEL表获取数据的通道
OLEObject ole1
ole1= CREATE OLEObject
result=ole1.ConnectTonewObject("Excel.application")
if result<>0 then
messagebox("提示!","连接Excel表出错,请重新选择")
return
end if
//操作员选择要导入数据的EXCEL文件
ll_rtn = getfileopenname(打开文件,ls_pathname,ls_filename,XLS,EXCEL文件(*.xls),*.xls)
if ll_rtn<>1 then
messagebox("提示!","连接Excel表出错,请重新选择")
return
end if
ole1.workbooks.open(ls_pathname,0,0)
ole1.visible = true
ll_rowno=1 ‘列
ll_colno=1 ’行
do while ole1.workbooks[1].worksheets[1].cells(ll_rowno,1).value
‘判断是否有数据
do while ole1.workbooks[1].worksheets[1].cells(ll_rowno,ll_colno).value
‘取数据
ls_cell = string(ole1.workbooks[1].worksheets[1].cells(ll_rowno,ll_colno).value)
s_cpxx[ll_rowno,ll_colno]=ls_cell
ll_colno=ll_colno+1
loop
ll_rowno=ll_rowno+1
loop
ole1.visible = false
‘关闭
ole1.workbooks.close()
‘销毁
destroy ole1