如何用pb做将excel表格导入pb数据窗口的程序
1个回答
推荐于2017-12-15
展开全部
这个是直接导入的。还有一种方法,就是逐行逐列读取excel表格,这个方法效率不高,但是有个好处就是excel的数据文件和数据窗口不要求对应,就相当于excel是一个数据窗口,从这里取值,赋值到目标数据窗口一样的操作。如果你需要我也可以帮你写一个例子。
先传一个直接导入的:这种导入要求excel和数据窗口的字段对应。
OLEObject ExcelServer
long excelok
string str_savename
string str_filename
string named
integer value
value = GetFileOpenName("打开文件",str_filename, named, "DOC", &
"文本文件 (*.TXT),*.TXT," &
+ "EXCEL 文件 (*.XLS),*.XLS,"+"EXCEL 文件 (*.XLSX),*.XLSX")
if value = 1 then
ExcelServer = CREATE OLEObject
ExcelOK = ExcelServer.ConnectToNewObject( "excel.application" )
if excelok < 0 then
messagebox("连接excel失败,检查你的系统是否安装了office",string(excelok))
return
else
dw_1.reset()
ExcelServer.Workbooks.Open(str_filename)
str_savename="c:\temp.txt"
excelserver.activeworkbook.saveas(str_savename,3)
excelserver.displayalerts=false
ExcelServer.quit()
ExcelServer.DisconnectObject()
DESTROY ExcelServer
dw_1.ImportFile(str_savename)
filedelete(str_savename)
end if
end if
先传一个直接导入的:这种导入要求excel和数据窗口的字段对应。
OLEObject ExcelServer
long excelok
string str_savename
string str_filename
string named
integer value
value = GetFileOpenName("打开文件",str_filename, named, "DOC", &
"文本文件 (*.TXT),*.TXT," &
+ "EXCEL 文件 (*.XLS),*.XLS,"+"EXCEL 文件 (*.XLSX),*.XLSX")
if value = 1 then
ExcelServer = CREATE OLEObject
ExcelOK = ExcelServer.ConnectToNewObject( "excel.application" )
if excelok < 0 then
messagebox("连接excel失败,检查你的系统是否安装了office",string(excelok))
return
else
dw_1.reset()
ExcelServer.Workbooks.Open(str_filename)
str_savename="c:\temp.txt"
excelserver.activeworkbook.saveas(str_savename,3)
excelserver.displayalerts=false
ExcelServer.quit()
ExcelServer.DisconnectObject()
DESTROY ExcelServer
dw_1.ImportFile(str_savename)
filedelete(str_savename)
end if
end if
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询