当前位置:首页教育技巧excel技巧excel表格制作

excel表格利用VBA读写excel文档属性

2024-07-23 20:30:57


要实现限制文件的使用次数,想来应该在某个地方存储文档已用的次数,并且在文档每被使用一次这个使用次数就得发生相应的更改。如果这个思路正确的话,我们就可以利用文档属性的某个位置来实现这一想法,故有了以下两种形式:
一、利用自定义属性:因为我们可以自定义数字型的属性,这一点非常符合我们的需求
先用一行代码ThisWorkbook.CustomDocumentProperties.Add Name:="open_times",LinkToContent:=False,Type:=msoPropertyTypeNumber,Value:=10来定义一个名为open_times的数字型属性、初始值为10。当然也可以手动定义
然后在文档的打开事件中写入:
Private Sub Workbook_Open()
If ThisWorkbook.CustomDocumentProperties("open_times")1 Then MsgBox"可用次数已小于1"
Else ThisWorkbook.CustomDocumentProperties("open_times")=ThisWorkbook.CustomDocumentProperties("open_times")-1 End If End Sub
注:1、这里我们只讨论在必须启用宏的情况下。2、这里只写了打开文档的次数,要想保存、修改等等,请作相应改动。3、限制的代码请自行修改,此处只写了MsgBox"可用次数已小于1"这么一个提示信息
二、上一个方法自然、直观,但不隐蔽。再利用内置文档属性直观上不容易发现的:
先用一行代码ThisWorkbook.BuiltinDocumentProperties.Item("comments")=""将备注清空,然后文档每打开一次其备注增加一个空格,再判断其长度,当长度达到我们的限制要求时,作相应操作:
Private Sub Workbook_Open()
ThisWorkbook.BuiltinDocumentProperties.Item("comments")=ThisWorkbook.BuiltinDocumentProperties.Item("comments")&""
If Len(ThisWorkbook.BuiltinDocumentProperties.Item("comments"))10 Then MsgBox"已超过可用次数"
End If End Sub
注:同前,限制的代码请自行修改,此处只写了一个提示信息

相关信息


电脑版

【免责声明】本站信息来自网友投稿及网络整理,内容仅供参考,如果有错误请反馈给我们及时更正,对文中内容的真实性和完整性本站不提供任何保证,不承但任何责任。
版权所有:学窍知识网 Copyright © 2011-2024 www.at317.com All Rights Reserved .