Complying error,对象在VBA中需要

Sub MinSelected(R As Range) Dim min As Double, tmp As String min = Application.WorksheetFunction.min(R) tmp = Application.WorksheetFunction.Text(min, "ddd/mm/dd/yyyy") Range("F2").Select ActiveCell = tmp End Sub 
 Sub MaxSelectedd(S As Range) Dim max As Double, tmp As String max = Application.WorksheetFunction.min(S) tmp = Application.WorksheetFunction.Text(max, "ddd/mm/dd/yyyy") Range("G2").Select ActiveCell = tmp End Sub Sub Main() Dim myRange As Range Set myRange = Selection Module5.MinSelected (myRange) MaxSelectedd (myRange) End Sub 

我对VBA相当陌生,在使用Subs时遇到一些麻烦。

我正在尝试输出用户所选范围的最小值和最大值。

MinSelected方法在模块5中, MainMaxSelectedd在模块6中。

当我调用Module5.Minselected(myRange)时发生Object required错误。

请帮我弄清楚为什么。

正确的语法是:

 Call MinSelected(myRange) Call MaxSelectedd(myRange) 

或者你可以使用:

 MinSelected myRange MaxSelectedd myRange 

你不需要在子Module5之前放置Module5 ,你的子模块/function默认是公开的,这意味着它们可以从所有模块中调用。

另外,你在Max函数中有一个input错误,你再次使用Worksheet min函数。