0

我正在尝试设计一个函数,该函数采用 Application.Caller.Column 值并使用它来查找不同工作表上的范围。

该函数被设计为从下拉框中获取值。该值将确定数组的行,我使用 Case 语句来做到这一点。我遇到的问题是,如果函数在 B 列中,我希望函数从另一张表返回 B 列值,依此类推。

我在使用它时不断收到#Value 返回,智能标签告诉我“公式中的值属于错误的数据类型”。任何帮助深表感谢!

代码

 Function NetPay(Scenario As Range)


 Dim CC As String
 CC = Application.Caller.Column
 Select Case Scenario

    Case 1: NetPay = Sheets("Scenarios").Cells(4, CC)
    Case 2: NetPay = Sheets("Scenarios").Cells(7, CC)
    Case 3: NetPay = Sheets("Scenarios").Cells(10, CC)
    Case 4: NetPay = Sheets("Scenarios").Cells(13, CC)
    Case 5: NetPay = Sheets("Scenarios").Cells(16, CC)
    Case 6: NetPay = Sheets("Scenarios").Cells(19, CC)
    Case 7: NetPay = Sheets("Scenarios").Cells(22, CC)


End Select

End Function
4

1 回答 1

0

您已CC定义为String.

将定义更改为Long.

此外,Select Case当您应该查看.value

于 2012-12-04T15:50:06.513 回答