pb 和excel 如何连接
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
pb 和excel 如何连接两种方法
OLE
//连接Excel
ole_excel= CREATE OLEObject
IF ole_excel.ConnectTonewObject("Excel.application") <> 0 Then MessageBox("","连接Excel失败!")
END IF
ole_excel.workbooks.open(ls_filepath,0,FALSE)
Li_CountRows = ole_excel.ActiveCell.CurrentRegion.Rows.Count
Li_CountColumns= ole_excel.ActiveCell.CurrentRegion.Columns.Count
dw_excel.reset()
ole_excel.visible = FALSE
// 获取EXCEL单元格数据
FOR Li_Row = 3 to Li_CountRows
Ll_NewRow = dw_excel.insertrow(0)
FOR Li_column = 1 to Li_CountColumns
ls_cell = Ole_excel.Workbooks[1].Worksheets[1].Cells(Li_Row,Li_column).Value IF ISNULL(Ls_Cell) Then Ls_Cell = ''
//插入数窗
IF Ll_NewRow > 0 Then
dw_excel.Setitem(Ll_NewRow,Li_column,ls_cell)
END IF
END FOR
END FOR
//断开连接
ole_excel.Quit()
ole_excel.DisConnectObject()
Destroy Ole_excel
还可以用DDE
string s_regiondata[3]
handle = OpenChannel("Excel", "REGION.XLS", &
Handle(w_ddewin))
GetRemote("R1C2", s_regiondata[1], handle, &
Handle(w_ddewin))
GetRemote("R1C3", s_regiondata[2], handle, &
Handle(w_ddewin))
GetRemote("R1C4", s_regiondata[3], handle, &
Handle(w_ddewin))
CloseChannel(handle, Handle(w_ddewin))
方法2
long numcols , numrows , c, r
OLEObject xlapp , xlsub
int ret
//定义变量
numcols = long(dw_product.Object.DataWindow.Column.Count)
//设置行号和列号
numrows = dw_product.RowCount()
//获得行数
xlApp = Create OLEObject
//创建OLE对象
ret = xlApp.ConnectToNewObject( "Excel.Sheet" )
if ret < 0 then
MessageBox("连接Excel程序失败!",string(ret))
return
end if
//连接Excel,并检验返回值
xlApp.Application.Workbooks.Open("E:\PB9\第八篇使用高级控件\实例81\useOLE.xls") //打开一个特定的Excel文件
xlApp.Application.Visible = true
//使该Excel文件可视
xlsub = xlapp.Application.ActiveWorkbook.Worksheets[1]
//确定第一个工作簿
For c = 1 to numcols
For r = 1 to numrows
xlsub.cells[r,c] = dw_product.object.data[r,c]
Next
Next
//循环发送数据
xlApp.DisConnectObject()
Destroy xlapp
//断开连接。