我有一个文件,它保存了自己的副本以便发送给特定的收件人,因此你最终会得到许多只包含特定收件人信息和包含所有信息的原始主文件的文件。当制作特定收件人的文件时,我有代码删除除与该收件人相关的信息之外的所有内容,并使用下面的函数随机生成密码锁定工作簿和工作表:
Function Pwd(iLength As Integer) As String
Dim i As Integer, iTemp As Integer, bOK As Boolean, strTemp As String
'48-57 = 0 To 9, 65-90 = A To Z, 97-122 = a To z
'amend For other characters If required
For i = 1 To iLength
Do
iTemp = Int((122 - 48 + 1) * Rnd + 48)
Select Case iTemp
Case 48 To 57, 65 To 90, 97 To 122: bOK = True
Case Else: bOK = False
End Select
Loop Until bOK = True
bOK = False
strTemp = strTemp & Chr(iTemp)
Next i
Pwd = strTemp
End Function
是否可能锁定模块,使其无法被编辑?我想要的是与Excel提供的Visual Basic相同的功能,方法是转到工具 -> VBAProject - 项目属性 -> 保护,但通过代码来实现,以便可以将其应用于每个接收者特定的文件。
我可以使用以下代码对工作表应用保护:
Sheets(1).Protect Password, True, True
并且对于带有类似以下代码的工作簿:
ActiveWorkbook.Protect Password, True, False
但是有什么工具可以用来锁定模块吗?