我正在开发一个我创建了PowerPoint插件的项目。这个概念只包含一个带有列表框的用户表单。根据用户选择,将添加其他模块(bas文件)或将其导入演示文稿,代码将被执行。
我不想在添加中包含所有模块,这取决于我可以进行修改的要求,然后可以存储在共享文件夹中。因此,每次用户使用插件时,他们都可以拥有更新版本。因此,我不必每次更改都要重新传播插件。
我有一个空白模块,我从文本文件中导入代码(bas文件中的代码保存为文本)然后运行。
我可以导入bas文件,也可以使用inserFrom文件选项我可以从文本文件中导入代码,但问题是它总是被添加到当前的演示文稿代码窗口。但我想将代码添加到插件代码窗格中。
我在addin中有一个名为“tempCode”的空白模块,我想更新导入的代码,但我无法这样做。
当我将插件编辑为ppt时,它工作正常,但是当我将ppt转换为插件时,概念无效。
任何想法如何将代码添加到插件代码窗格而不是添加到活动ppt。
代码详情:
我有一个用户表单,带有一个列表框。 它有3个项目。 选项1 选项2 选项3 如果用户选择任何选项,让我们说选项2,选项2的代码将从文本文件导入工作模块。
一个命令按钮,用于运行所选的。
工作模块的名称是“Mod_Working” 文本文件名是“C:\ Code \ Option2.txt”
以下是我正在使用的代码:
Sub ImportSelected()
With ActivePresentation.VBProject.VBComponents(“Mod_Working”).CodeModule
.DeleteLines 1, .CountOfLines 'it deletes any existing code
.AddFromFile “C:\Code\Option2.txt”
End With
End Sub
Code in text file:
Sub Test
Msgbox “You selected Opt 2”
End sub
Code of Command Button:
Private Sub Cmd_run_Click()
Application.Run “Mod_Working.Test”
End Sub
这适用于ppt模式,但转换为插件时无法使用。
答案 0 :(得分:0)
为什么不这样做: - 在共享文件夹中,将加载项文件标记为只读(右键单击,属性)。这可以防止文件在人们使用加载项时正在使用(至少它在Excel中以这种方式工作) - 更新后,只需替换加载项并将其再次设置为只读即可。