注册 登录
编程论坛 VFP论坛

请教大佬 利用VFP能否实现excel只能编辑保存,但不能另存为的实现方法

laibinhua 发布于 2022-06-14 13:34, 3310 次点击
请教大佬 利用VFP能否实现excel只能编辑保存,但不能另存为的实现方法
23 回复
#2
吹水佬2022-06-14 15:18
能保存又不能另存,什么操作?
#3
星光悠蓝2022-06-14 16:39
参考:https://wenku.baidu.com/view/4e2e7a3bc6da50e2524de518964bcf84b9d52dcc.html
将菜单屏蔽掉,再添加就个保存按钮,指定保存
只有本站会员才能查看附件,请 登录
#4
吹水佬2022-06-14 18:18
用户能编辑保存,“编辑”有很大自由度,想要100%不能“另存”有点难。
#5
my23182022-06-14 20:29
感觉没必要,用户既然能编辑,就可以复制粘贴到其他地方,纠结另不另存有必要吗?
#6
星光悠蓝2022-06-14 23:12
以下是引用my2318在2022-6-14 20:29:26的发言:

感觉没必要,用户既然能编辑,就可以复制粘贴到其他地方,纠结另不另存有必要吗?

复制粘贴是不带VBA代码的。我们不必猜测发帖人的意图,单从技术上探讨如何实现。
#7
星光悠蓝2022-06-14 23:12
发错了,删不掉!

[此贴子已经被作者于2022-6-14 23:15编辑过]

#8
schtg2022-06-15 05:34
主要目的应该是允许用户编辑,不希望用户留存副本,不另存,但可以复制粘贴啊?也不允许复制?可以照相啊?可以截图啊?解决起来确实很困难。
#9
nbwww2022-06-15 06:27
用个第三方表格控件如何?
#10
laibinhua2022-06-15 09:38
就是不想让用户把文件另存为保存下来,但又要他们可以编辑使用这个文件,我的想法能不能通过 vfp ,做出一个操作 excle的界面,这里面就编辑这个文件,加一个保存按钮!

[此贴子已经被作者于2022-6-15 09:39编辑过]

#11
my23182022-06-15 13:40
以下是引用laibinhua在2022-6-15 09:38:07的发言:

就是不想让用户把文件另存为保存下来,但又要他们可以编辑使用这个文件,我的想法能不能通过 vfp ,做出一个操作 excle的界面,这里面就编辑这个文件,加一个保存按钮!

实际上很简单,不使用excel,直接使用vfp的数据表或自开发的控件编辑数据。如果利用excel无法实现你的目的。因为用户可以复制粘贴到另一文件,可以导出出到另一文件,这些都可以绕过另存为文件。即使你的文件是带密码的也不行。
#12
zhken2022-06-15 14:44
其实防不防,另不另存,弄什么编缉框都不管用。没有用。现在截屏后一下子就可以将文字转为文本了。
#13
laibinhua2022-06-17 10:25
想通过这种方式实现EXCEL只能编辑,不能另存为复制使用:
1:给excel文件带上密码
2:VFP编个功能在VFP系统里打开这个EXCEL文件
3:只有保存按钮
#14
吹水佬2022-06-17 10:31
眼见为实,想人家不留痕有点难吧
#15
laibinhua2022-06-17 10:54
回复 14楼 吹水佬
谢谢大佬回复,是这种类型的EXCEL看了也没什么用处,太多规格的报价计算公式,主要用于销售公司防止内部员工别存为报价单
只有本站会员才能查看附件,请 登录
#16
laibinhua2022-06-17 11:00
有什么办法可以实现VFP命令给EXCEL文件设置密码,因为密码定期有更换!
#17
laibinhua2022-06-17 12:53
能供个实例吗?VFP里操作excel文件,不用oExl.Workbooks.Open('c:\wjsoft\doc\test.xlsx')这种方式,我拖拉了一个actvieX Microsoft Excel Worksheep控件进来,给它一个属性赋值 thisform.olecontrol1.documentfile='c:\wjsoft\doc\test.xlsx' ,它提示这个属性是readonly,大佬有实例吗?
#18
laibinhua2022-06-17 13:11
回复 3楼 星光悠蓝
oExl=CREATEOBJECT('Excel.application')
oExl.Visible=.T.
oExl.Workbooks.Open('c:\wjsoft\doc\test.xlsx')
&&下面这样写频闭菜单报错,要如何改正?????
oExl.(1).Controls("文件(&F)").Enabled = False

[此贴子已经被作者于2022-6-17 13:13编辑过]

#19
星光悠蓝2022-06-20 20:06
回复 18楼 laibinhua
oExl.(1).Controls("文件(&F)").Enabled =.F.
#20
laibinhua2022-07-18 10:59
回复 19楼 星光悠蓝
这样写也无效!我用的是OFFICE2012
#21
csyx2022-07-18 11:38
把CommandBar的内容列出来看看
for each oi in (1).Controls
    ? oi.Caption
endfor
#22
talkrobin2022-07-18 20:52
VFP的表内容能编辑就能复制保存的,这个是windows 大部分软件基本情况.
还有你的VFP都有表生成,懂点foxpro的人都可以通过foxpro或其他软件导出为EXECL格式.
如针对仅对文件操作理论上总有办法可设置ready only ,但是数据内容真是无解的.
以上纯属个人理解.
期待有大神解决为你的内容只读或不能另存为问题.
作为小白的我,继续学习中.
#23
laowan0012022-08-13 08:55
666

[此贴子已经被作者于2022-8-13 08:56编辑过]

#24
sxzjbb2022-09-02 22:48
导入到VFP里处理,点保存后保存到EXECL文件里
1