我在以下代码中收到错误

时间:2015-09-06 14:01:53

标签: vba excel-vba excel

我想引用一个数组,其中最后一行是动态的,其值保存在单元格中。

任何人都可以帮我解决这段代码中的错误

Sub Drop_down()
'
' Drop_down Macro
'

'
Sheets("Raw Data").Select
    Dim UC_count As Long

Application.ActiveSheet.UsedRange
UC_count = Worksheets("Raw Data").UsedRange.Rows.Count - 1
    Sheets("Scoring Sheet").Select
    Range("B4").Formula = "=VLOOKUP(R3C&"":""&INDEX(RA_Sheet!R4C1:R &(UC_count+4)C20,MATCH('Scoring Sheet'!RC1,RA_Sheet!R4C1:R&(UC_count+4)C1,0),MATCH('Scoring Sheet'!R3C,RA_Sheet!R4C1:R4C20,0)),'PV Lookup Table'!R1C6:R108C9,4,0)"

如果我写了数字,而不是UC_count,那么代码效果很好。

1 个答案:

答案 0 :(得分:0)

尝试此更改:

Range("B4").Formula = "=VLOOKUP(R3C&"":""&INDEX(RA_Sheet!R4C1:R" & (UC_count+4 ) & "C20,MATCH('Scoring Sheet'!RC1,RA_Sheet!R4C1:R" & (UC_count+4 ) & "C1,0),MATCH('Scoring Sheet'!R3C,RA_Sheet!R4C1:R4C20,0)),'PV Lookup Table'!R1C6:R108C9,4,0)"

将UC Count的值正确插入公式中。 (虽然我没有测试公式的其余部分。)

另一个提示;也许使用命名范围;并在需要时更新命名范围?