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 に答える