【发布时间】:2015-12-14 17:23:04
【问题描述】:
我有一个索引/匹配查找公式,我想将其合并到 ActiveX 表单中。代码是
=IF(A2="","No Search Criteria",IFERROR(INDEX(AssetList,MATCH(A2,AssetList[Asset '#],0),1),INDEX(AssetList,MATCH(A2,AssetList[Serial '#],0),1))
) 这使我可以搜索项目的资产编号或序列号并返回其资产编号。包含此代码的单元格旁边的单元格已修改版本以返回其序列号、项目编号和棘轮尺寸。我正在尝试创建一个执行这些相同功能的表单,允许用户在 SearchCriteriaTextBox 中输入资产或序列号,并在单击 SearchButton 时将适当的值返回给 AssetNumberListBox、SerialNumberListBox、ItemNumberListBox 和 RatchetSizeListBox。
到目前为止,我得到了:
Private Sub SearchButton_Click()
AssetNumberListBox.Value = Application.WorksheetFunction.Match(SearchCriteriaTextBox.Value, Sheet2.ListObjects("AssetList").ListColumns("Asset#").DataBodyRange, False)
SerialNumberListBox.Value =
ItemNumberListBox.Value =
RatchetSizeListBox.Value =
End Sub
但是当我单击 SearchButton 时,这给了我“运行时错误 '9':下标超出范围”。我对 Excel 尤其是 VBA 很陌生,所以如果有人有任何想法至少要填充一个 ListBox,以便我可以将代码调整为其他代码,我将不胜感激。作为参考,我在 Windows 7 上使用 Excel 2010。提前致谢!
【问题讨论】:
标签: vba excel excel-2010