【问题标题】:Assigning Macro Buttons in Different Workbook在不同的工作簿中分配宏按钮
【发布时间】:2021-03-26 16:19:48
【问题描述】:

我正在尝试将具有宏按钮(移动时未分配)的工作表移动到新工作簿,然后将按钮分配给存储在工作表中的一些宏。我正在使用以下代码来分配名为 sort 的宏:

Set NewBook = Workbooks.Add
set ws = OldBook.Sheets(1)

ws.Move Before:=NewBook.Sheets("Sheet Name")
NewBook.Sheets(1).Shapes.Range(Array("Button1")).Select
Selection.OnAction = "Sheet1.sort"

NewBook.SaveAs Filename:= "File Name", FileFormat:=52
NewBook.Close

问题:当我运行代码然后打开新工作簿时,宏按钮被分配给一个名为“OldBook.Sheet1.sort”的宏,该宏显然在新工作簿中不存在。

我不明白它为什么要加入“旧书”。分配宏时。任何想法将不胜感激。

【问题讨论】:

  • 可以添加工作簿参考吗?
  • .OnAction = "'" & NewBook.Name & "'!Sheet1.sort"
  • 成功了!感谢 SJR 和悉达多!

标签: excel vba


【解决方案1】:

在 cmets 中推荐的 Siddharth 代码运行良好。

【讨论】:

    猜你喜欢
    • 2015-07-30
    • 2021-06-22
    • 2013-03-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-02-11
    • 2023-03-13
    • 1970-01-01
    相关资源
    最近更新 更多