VB怎样锁住excel文件,不让用户手动打开,待程序执行完后再将锁去掉 用vb编辑一个excel文件,如果程序运行过程中将excel文件打开,程序会出错怎样写代码才能锁住文件,即在程序运行开始将文件锁住,用户在此期间不能打开此excel文件,待程序执行完毕再将文件锁取消 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 Open "d:\1.xls" For Input As #1Lock #1MsgBox "locked"Unlock #1MsgBox "unlocked"Close #1 你把EXCEL文件的扩展名改为其他,这样用户就不能直接打开了。你是想把数据导出到EXCEL中吗?你导出后再保存文件,内容这样一直在内存中,用户无法打开直到你保存成文件。 不止是导数据那么简单,要对单元格内数据进行校验,有不合格数据要信息提示,并重新输入数据,还要对数据排序,并生成新的excel文件 只要你的程序引用EXCEL对象来打开EXCEL文件,这个文件就已经被锁定了,其他人只能以只读方式打开而不能编辑了 oExcel.Workbooks.Open (App.Path & "\Template\ship.xls")oExcel.ActiveWorkbook.SaveAs (FileName)oExcel.WindowState = xlMaximizedoExcel.Visible = False.....oExcel.Visible =True EXCEL做为数据源打开之后,其他人是“只能看不能摸”的! 10楼的,我用的就是这种方式,另外9楼11楼说的也是对的,excel文件在vb程序运行时是只读的了,不过还可以点击文件将其打开,虽然不能编辑,但可以不保存关闭,当把它不保存方式关掉后,如果程序还没有运行完,就会出现错误,错误号:424错误描述:要求对象改名的还没有试过 想不考虑楼上各位的方案而还是要坚持你要的效果的话,给你指条路:HOOK CreateFileA这个API,一切就解决了...HOHO:) "用户双击",从原理上来说是Explorer.exe先调用CreateProcessA建立一个EXCEL进程,然后EXCEL进程再使用CreateFileA这个API来打开目标文件,然后再使用ReadFile与WriteFile来读写文件.因此只需要把当前EXCEL进程里的CreateFileA函数的调用拦截了,并判断其文件名是否是你不允许读取的文件,就可以让用户无法以EXCEL打开你正在使用的文档了.不过貌似有点小题大作:) 求助 vb 奇怪的字符串问题 怎么把中文字符串转换为IE编码后的字符 新手求助:一个排序问题 散分 请问RTF是什么文件的后缀名??? 如何调整背景图片的大小 这个问题太闹心!初学者对DATA的困惑????嗷嗷着急等答案! Lib "user32" 怎么不能调用? mscomm如何接收彩信图片并把该彩信图片保存到本地电脑 关于打印整个picturebox包括上面的控件(包括由于form太小,被挡住的部分和其中的控件) 请问:VB6中的控件Textbox中的Index和TabIndex,它们的作用是什么? 求教,VB6如何获得IP 重定向后的 URL
Lock #1
MsgBox "locked"
Unlock #1
MsgBox "unlocked"
Close #1
你把EXCEL文件的扩展名改为其他,这样用户就不能直接打开了。你是想把数据导出到EXCEL中吗?
你导出后再保存文件,内容这样一直在内存中,用户无法打开直到你保存成文件。
oExcel.ActiveWorkbook.SaveAs (FileName)
oExcel.WindowState = xlMaximized
oExcel.Visible = False.....
oExcel.Visible =True
错误号:424
错误描述:要求对象
改名的还没有试过