我使用.autofilter来过滤excel中的列表,我的问题是我想让自动过滤器的结果填充文本框。我知道我可以使用类似的东西
textbox.text = Data(a1).value
然而,当细胞被过滤时,它们保持原始细胞位置,所以我不能只使用细胞位置。过滤器只会有一个结果,所以我需要一些东西来填充过滤器标题下面的行中的文本框。
对于背景,所有想法都是有一个可以从当前有效的用户形式搜索的电子表格,然后在文本框中显示结果。保持电子表格的用户远离原始数据。
答案 0 :(得分:0)
也许函数SpecialCells(xlCellTypeVisible)
可以帮助你......你的代码看起来像这样:
Sheet1.Range.SpecialCells(xlCellTypeVisible).Cells(1,1).Value
我还没试过......
答案 1 :(得分:0)
如果您只有1个结果,则以下方法有效:
textbox.text = Sheet1.Range("myrange").SpecialCells(xlCellTypeVisible).Value
但如果过滤器中有超过1个结果,则会出现类型不匹配。