image

使用VBA时,运行该过程时可能会弹出此错误消息。该错误显示“检测到歧义名称:过程名称”。在本文中,我们将学习为什么会发生此错误以及如何解决它。

为什么会出现此错误?

正如弹出窗口所示,VBA引擎已在同一模块中检测到一个或多个具有相同名称的过程。这导致VBA引擎混乱。因此,VBA报告该错误。

如何解决这个问题?

这简单。在单个模块中没有两个具有相同名称的相同过程。更改过程名称,将其删除或将其移至其他模块。

使用

Excel中的事件。*假设您正在处理带有工作表事件的sheet1。现在,您要在用户更改单元格选择后立即触发消息。在这种情况下,您将在进行任何更改时使用link:/ tips-using-worksheet-change-event-to-run-macro- [Worksheet_SelectionChange()

事件]`。

现在,当用户更改单元格选择时,您想再次向用户提问。然后,您将不得不使用相同的事件。

现在,您已经为不同的任务编写了两个事件处理过程。

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

MsgBox "Hi"

End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

Application.InputBox ("who are you?")

End Sub

现在,当您更改工作表上的选择时,这就是您得到的。

image

现在,当您更改工作表上的选择时,这就是您得到的。

image

瞧,事实是Excel不允许这样做。一个模块中不能有两个或多个相同的函数名称。甚至在活动中也没有。这导致模棱两可。

现在,如果您要对同一事件执行不同的任务,则必须将该代码放入同一事件过程中。使用条件来控制事件。

下面的事件将正常运行。当用户在工作表1上更改单元格选择时,它将弹出一个hi消息,然后将向用户询问带​​有输入框的问题。

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

MsgBox "Hi"

Application.InputBox ("who are you?")

End Sub

现在,歧义消失了,该事件将正常运行,并且您将不会再次收到错误模棱两可的名称检测到的错误。

好的,这就是您可以解决Excel VBA中的歧义错误的方法。我希望这可以帮到你。如果您对本文或任何其他文章有任何疑问,请在下面的评论部分中问我。

相关文章:

参考不是有效的Excel错误及其解决方法?:当我们引用一个不存在或已更改的对象或位置。为了解决这个问题,我们跟踪参考。

Excel VBA中的事件 Excel中有七种类型的事件。每个事件涉及不同的范围。应用程序事件处理工作簿级别。工作表上的工作簿。范围级别的工作表事件。

`link:/ events-in-vba-the-worksheet-events-in-excel-vba [Excel VBA中的工作表事件] |当希望在指定事件发生在宏上时运行宏时,工作表事件非常有用片。

在Microsoft Excel中使用VBA的工作簿事件 |工作簿事件适用于整个工作簿。由于所有工作表都是工作簿的一部分,因此这些事件也适用于工作簿。

防止自动宏/ event宏在Microsoft Excel中使用VBA执行为防止运行auto_open宏,请使用shift键。

在Microsoft Excel中使用VBA绘制对象事件图表是复杂的对象,您已附加了几个组件。为了制作图表事件,我们使用类模块。

热门文章:

50 Excel快捷方式以提高生产率更快地完成任务。这50个快捷键将使您在Excel上的工作更加快捷。

Excel中的VLOOKUP函数 |这是excel中最常用和最受欢迎的功能之一,用于从不同范围和工作表中查找值。

在Excel 2016中为COUNTIF使用此惊人的功能对条件进行计数。您无需过滤数据即可计算特定值。

Countif功能对于准备仪表板至关重要。

如何在Excel中使用SUMIF函数这是仪表板的另一个重要功能。这可以帮助您汇总特定条件下的值。