Excel 检测到不明确的名称

Excel 检测到不明确的名称,excel,vba,Excel,Vba,我的代码工作不正常,出现一条错误消息,指出检测到的名称不明确:WOS 下面是我的代码。如何使此代码正常工作 Sub WOS() Function WOS(BOP, StartPosn As Range) Set myRange = Range(StartPosn, StartPosn.End(xlToRight)) Dim lupvals() ReDim lupvals(1 To myRange.Cells.Count) i = 1 For Each cll In myRange.Cells

我的代码工作不正常,出现一条错误消息,指出检测到的名称不明确:WOS 下面是我的代码。如何使此代码正常工作

Sub WOS()

Function WOS(BOP, StartPosn As Range)
Set myRange = Range(StartPosn, StartPosn.End(xlToRight))
Dim lupvals()
ReDim lupvals(1 To myRange.Cells.Count)
i = 1
For Each cll In myRange.Cells
lupvals(i) = Application.Sum(Range(StartPosn, cll))
i = i + 1
Next cll
xx = Application.Match(BOP, lupvals)
If IsError(xx) And lupvals(1) >= BOP Then
WOS = BOP / lupvals(1)
Else
If xx = UBound(lupvals) And (BOP - lupvals(xx)) > 0 Then
WOS = "n/a"
Else
WOS = xx + (BOP - lupvals(xx)) / myRange(xx + 1)
End If
End If
End Function

您定义了子WO和函数。只留下其中一个。尝试漫游第一行子WO()

您定义的子WO和函数。只留下其中一个。尝试rove first row Sub WOS()

我离开了代码的函数部分,现在宏不再显示。我需要如何更改代码才能使用公式=WOS(CellB1,RangeB2:B14)?Csn u调试它?你调用你的函数了吗?我调试了它并让它工作了。谢谢现在我需要弄清楚为什么我的逻辑不能正常工作。我离开了代码的函数部分,现在宏不再显示了。我需要如何更改代码才能使用公式=WOS(CellB1,RangeB2:B14)?Csn u调试它?你调用你的函数了吗?我调试了它并让它工作了。谢谢现在我需要弄清楚为什么我的逻辑不能正常工作。除非有更多的原因,否则您提供的代码不可能正常工作。没有
End Sub
,并且Sub和函数具有相同的名称(这是直接错误的来源)。除非有更多的名称,否则您提供的代码不可能工作。没有
End Sub
,并且Sub和函数具有相同的名称(这是直接错误的来源)。