如何在不打开Visual Basic编辑器的情况下执行VBA代码

时间:2018-11-04 08:26:50

标签: excel vba excel-vba

我目前正在开发一个程序来读取Excel。

但是,我有一些验证点需要同时在Java和Excel中进行验证。因此,我希望我的Excel在Excel文件上为我验证一些简单的逻辑。

我将分发包括VBA代码的Excel文件,我的用户如何执行验证代码?

我不希望我的用户打开Visual Basic编辑器并运行它-有没有简单的方法可以做到这一点?

我发现有一种方法可以插入按钮,这是唯一的方法吗?

2 个答案:

答案 0 :(得分:2)

是的,就像Lambik早已写过的那样,有很多解决方案。 VBA有很多对象,并且有很多事件

enter image description here

在此图中,您可以看到您的对象,我选择了“对象工作表”,当您添加表单或按钮时,您也可以在此处找到这些对象,其中包括工作簿,工作表,输入字段,单元格和如此。

在左侧选择对象后,您可以在右侧选择事件。

添加按钮并双击它或右键单击并继续编辑代码时,这将是单击事件,但您也可以选择双击事件。

在上面的屏幕中,我们有对象工作表:

enter image description here

现在选择激活事件时,将获得基本的子方法。 当您激活工作表时,将执行内部代码。 为了更好地理解一些示例:

    Private Sub Worksheet_Activate()
      MsgBox "You just activated " & ActiveSheet.Name
    End Sub

当您只想在激活特定工作表时执行某项操作时,您可以询问激活了哪个工作表,然后执行所需的代码。

使用其他对象和事件的方式相同。

答案 1 :(得分:1)

有多个选项: -您可以像说的那样做一个按钮 -您可以要求用户通过开发者标签执行宏 -您可以创建一个宏,该宏可以执行某种动作,例如激活工作表,更改单元格,打开文件等等。