PB读取任何格式excel只要指定开始和结束的行列


PB读取任何格式excel只要指定开始和结束的行列

//从excel文件获得数据 

//建立从EXCEL表获取数据的通道  

OLEObject   ole1  
 

int result ,ll_rtn,i,row,col


string ls_pathname,ls_filename

long ll_firstrow,ll_firstcol
long ll_endrow,ll_endcol


string ls_cell,ls_desc

ole1=   CREATE   OLEObject  

result=ole1.ConnectTonewObject("Excel.application")  

 

if   result<>0   then 
 
messagebox("提示!","连接Excel表出错,请重新选择") 
 
return  

end   if  
 
string ls_word[]

ls_word = {'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','Z'}


//操作员选择要导入数据的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_firstrow=1 
ll_firstcol=1

ll_endrow=30

ll_endcol=3
 

//从用户指定行指定列读取数据到DW.

for row = ll_firstrow  to ll_endrow
 
for col = ll_firstcol to ll_endcol
  
ls_cell   =   string(ole1.workbooks[1].worksheets[1].cells(row,col).value) 
 
i = dw_1.insertrow(0)
  
dw_1.setitem(i,'irow',row)
  
dw_1.setitem(i,'icol',col)
  
dw_1.setitem(i,'svalue',ls_cell)
  
dw_1.setitem(i,'ss',ls_word[col] + string(row) )
  
ls_desc += ls_word[col] + string(row) +'=' + string(ls_cell) + '~r~n'
 next
 
ls_desc += '~r~n'
next

mle_1.text = ls_desc

ole1.visible   =   false  

ole1.workbooks.close()   

ole1.Quit()

ole1.DisconnectObject() 
//断开与OLE的连接

destroy   ole1   


 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值