Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel 如何删除工作表上的所有按钮?_Excel_Vba - Fatal编程技术网

Excel 如何删除工作表上的所有按钮?

Excel 如何删除工作表上的所有按钮?,excel,vba,Excel,Vba,我有一些代码可以在工作表上创建一个保存按钮(保存在wsReport变量中),但它不会删除以前的按钮。随着时间的推移,它们倾向于积累。有没有办法做这样的事 wsReport.Buttons.All.Delete (显然不正确,但给出了我要寻找的内容的想法。)请参阅下面的代码:) 资料来源: 或者您可以使用下面的代码: (VBA中的按钮位于“形状”集合中) 资料来源: 有一种更简单的方法不使用VB: 单击“开发人员”选项卡 单击“设计模式” 单击工作表中的任意按钮 按Ctrl+A选择工作表中的所

我有一些代码可以在工作表上创建一个保存按钮(保存在
wsReport
变量中),但它不会删除以前的按钮。随着时间的推移,它们倾向于积累。有没有办法做这样的事

wsReport.Buttons.All.Delete
(显然不正确,但给出了我要寻找的内容的想法。)

请参阅下面的代码:)

资料来源:

或者您可以使用下面的代码: (VBA中的按钮位于“形状”集合中)

资料来源:
有一种更简单的方法不使用VB:

  • 单击“开发人员”选项卡
  • 单击“设计模式”
  • 单击工作表中的任意按钮
  • 按Ctrl+A选择工作表中的所有按钮
  • 按Delete键
  • 请参阅下面的代码:

    Sub DeleteAllShapes() 
    
        ActiveSheet.Shapes.SelectAll
    
        Selection.Delete
    
    End Sub
    

    如果有人发现了此问题,但只需要删除一个按钮,这对我有帮助:

    ActiveSheet.Shapes("my_button_name").Delete
    

    Activesheet.Buttons.Delete
    本身工作得非常好-非常感谢!可能的重复项您需要先激活“开发人员”选项卡:
    Sub DeleteAllShapes() 
    
        ActiveSheet.Shapes.SelectAll
    
        Selection.Delete
    
    End Sub
    
    ActiveSheet.Shapes("my_button_name").Delete