我有一个带有组合框和提交按钮的用户表单,用户输入用户从下拉到第一个空行的工作表所做的选择。组合框vba工作正常。但是,例如,如果在单元格C2中输入组合框选项(因为第一个空行是2而C总是组合框输入结果的列)我想在D列中有一个VBA中的vlookup公式,基于在C列中自动填充在同一时间列D自动填充的内容D.就像在D列中根据C列中的值向下拖动vlookup公式一样。
这是我到目前为止所做的,但它不起作用。 vlookup部分似乎不起作用。我错过了什么吗?
With Sheets("TasksData").Range("D2", Sheets("TasksData").Cells
(Rows.Count, "D").End(xlUp))
.Offset(, 1).Formula = "=VLOOKUP(C" & .Row & ",'ValidationTables'!$L:$M,2,FALSE)"
.Offset(, 1).Value = .Offset(, 1).Value
End With
答案 0 :(得分:1)
你的With
声明对我来说有点不对劲。你得错了吗?
请改为尝试:
Dim lastRow
With Sheets("TasksData")
lastRow = .Cells(.Rows.Count, "C").End(xlUp).Row
With .Range(.Cells(2, 3), .Cells(lastRow, 3))
.Offset(, 1).FormulaR1C1= "=VLOOKUP(RC[-1],'ValidationTables'!C12:C13,2,FALSE)"
.Offset(, 1).Value = .Offset(, 1).Value
End With
End With