标题:如何解除EXCEL表的锁定状态呢?
只看楼主
w7802672
Rank: 1
等 级:新手上路
帖 子:231
专家分:0
注 册:2015-5-20
结帖率:60%
已结贴  问题点数:20 回复次数:2 
如何解除EXCEL表的锁定状态呢?
我在将EXCEL表中数据转到数据库表之后再打开原来的EXCEL表时显示EXCEL表被锁定了,如何在导入数据后解除对EXCEL表的锁定呢?源程序如下:
local oExcel,oWorkBook,oSheet  
local cFilePath  
public cFieldName,cFieldVal
oExcel=createobject("excel.application")
oExcel.visible=.f.
cFilePath=getfile("xls")
IF EMPTY(cFilePath)
   messagebox("请选择excel文件")
   RETURN
ENDIF
oWorkBook=oExcel.workbooks.open(cFilePath)
oSheet=oWorkBook.sheets(1)  
set safety off
use dwlszb  exclusive
zap
for iRow=1 to oSheet.usedRange.rows.count-1
  append blank   
  for iCol=1 to  oSheet.usedRange.columns.count
   cFieldName=oSheet.cells(1,iCol).text
   cFieldVal=oSheet.cells(iRow+1,iCol).value
   replace &cFieldName with  cFieldVal  
  endfor
endfor
搜索更多相关主题的帖子: excel safety public 数据库表 源程序 
2016-01-11 09:55
厨师王德榜
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:183
帖 子:942
专家分:4724
注 册:2013-2-16
得分:20 
你打开了文件,没有关闭嘛,后台还占用着的,你可以用进程管理器看看,后台应该有一个EXCEL.EXE 没有关闭。
可以加上:

oleapp.ActiveWorkbook.Save
oleapp.ActiveWorkbook.Saved=.T.
oleapp.DisplayAlerts=.T.
oleapp.Workbooks.Close
oleapp.Quit
Release oleapp

注意,我是用的Oleapp ,你自己改一下。
2016-01-11 10:19
w7802672
Rank: 1
等 级:新手上路
帖 子:231
专家分:0
注 册:2015-5-20
得分:0 
回复 2楼 厨师王德榜
谢谢,按你的办法解决了,再次感谢!
2016-01-11 10:35



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-460995-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.027133 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved