【问题标题】:Excel Userform VBA VLOOKUPExcel 用户窗体 VBA VLOOKUP
【发布时间】:2019-06-13 00:02:11
【问题描述】:

我正在创建一个用户表单,其中基于名为“ContractsList”的项目下拉列表,我希望 Vlookup 公式在“TextBox 1”中返回文本数据。

我收到一条错误消息,提示“运行时错误'1004':无法获取工作表函数类的 Vlookup 属性

不确定我做错了什么,如果有人能发现错误,这是我的代码。

Private Sub ContractsList_AfterUpdate()

If WorksheetFunction.CountIf(Sheet2.Range("A:A"),Me.ContractsList.Value) = 0 Then
MsgBox "This contract is not on the list"
Me.ContractsList.Value = ""
Exit Sub

End If
'Lookup values based on first control
With Me

.TextBox1 = Application.WorksheetFunction.VLookup(Me.TextBox1, ("B5:B72"), 2, 0)

End With
End Sub

【问题讨论】:

  • 我把它改成“A5:E72”还是不行。看起来它不喜欢“Me.TextBox1,”
  • 我使用了“.TextBox1 = Application.WorksheetFunction.VLookup(Me.ContractsList, Range("A5:E72"), 2, 0)" 它工作了一两次然后就停止了。

标签: vba excel excel-formula userform


【解决方案1】:

终于让它工作如下:

Private Sub ContractsList_AfterUpdate()

If WorksheetFunction.CountIf(Sheet2.Range("A:A"), Me.ContractsList.Value) = 0 Then
MsgBox "This contract is not on the list"
Me.ContractsList.Value = ""
Exit Sub

End If
'Lookup values based on first control
With Me

.TextBox1 = Application.WorksheetFunction.VLookup(Me.ContractsList, Sheet2.Range("A5:E72"), 2, 0)

End With
End Sub

我只需要添加 "Sheet2.Range("A5:E75")

感谢大家的帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-02-04
    • 2014-02-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-06-15
    • 1970-01-01
    相关资源
    最近更新 更多