Excelmacros更新macros
我有一个场景。 我正在使用一组excel文件进行报告。 所有这些excel都启用了macros,并具有连接到服务器的“login”function。 为了解决安全问题,我们必须更新“login”function。 有没有办法编写一个macros来replace这个excel文件中的这个函数? 基本上是一个macros来更新macros!
启用macros安全选项:
那么你需要这样的代码:
Sub AddMacro() Dim xlbook As Workbook Set xlbook = ActiveWorkbook 'Assign workbook to have macro added here Dim xlmodule As Object Set xlmodule = xlbook.VBProject.VBComponents.Add(1) Dim strCode As String strCode = _ "Function MyFunction()" & vbCr & _ "'some function code here" & vbCr & _ "End Function" xlmodule.CodeModule.AddFromString strCode End Sub
过去我也有类似的问题。 基本上需要在所有用户使用新费率时更新function。
我的解决scheme是使用.xlam文件,当用户重新启动计算机时基本上推送更新。
如果您没有多个用户,只需在“PERSONAL.XLSB”中有一个macros模块,只需要更新该macros,然后在每个工作簿上工作。