自动运行模板的子程序

问题描述 投票:0回答:0

我正在创建一个模板工作表作为

.xltm
文件(“
TemplateT
”)。

目标是用它来对从其他文件复制过来的内容做一系列的格式化。例如,用户应手动复制Sheet1

WorkbookA
的整个
B
列,粘贴到TemplateT中的
D
列,子程序应自动将范围设置为粗体(复制的单元格为 Sheet1!WorkbookA
中不
粗体)。

我先尝试了一个非常基本的例子:

Option Explicit

Private Sub Workbook_Open()

Range("D1:D20").Font.Bold = True

End Sub

尽管使用

Workbook_Open()
这不起作用。我必须手动运行代码。优选地,代码应在
TemplateT
打开后立即运行,或者当 VBA 检测到单元格中的新内容时(即当其他工作簿的内容被复制时)。

我做错了什么?这与宏安全和微软对恶意代码的保护有什么关系吗?或者我只是在我的代码中遗漏了一些东西?

excel vba
© www.soinside.com 2019 - 2024. All rights reserved.