我有一个宏设置为用密码保护从同一宏创建的文件。这可以正常工作,但是当为不同的收件人生成单独的文件时,我想使用它,并且收件人都应具有唯一的密码。
通过宏保存文件时,如何从单独的电子表格中查找密码值?
此刻,我的代码看起来像这样,带有预设的密码(为方便起见,缩短了文件路径/名称)。
ActiveWorkbook.SaveAs Filename:= "filepath\filename" , FileFormat:= _xlOpenXMLWorkbook, Password:= "Test"
这可行,但是我希望将密码替换为从另一个电子表格中查找的值。任何帮助将不胜感激。
谢谢
答案 0 :(得分:0)
您将需要使其适应您的特定需求,但是这样的事情应该可以让您有所收获:
Sub testLookup()
Dim ws As Worksheet: Set ws = ThisWorkbook.Sheets("sheet name")
Dim lRow As Long: lRow = ws.Cells(Rows.Count).End(xlUp).Row
Dim arrRecipients: arrRecipients = ws.Range("A1:B" & lRow) 'assume path in col A, password col B
For R = LBound(arrRecipients) To UBound(arrRecipients)
ActiveWorkbook.SaveAs FileName:=arrRecipients(R, 1), FileFormat:=xlOpenXMLWorkbook, Password:=arrRecipients(R, 2)
Next R
End Sub