gpt4 book ai didi

vba - 自动筛选后获取可见范围

转载 作者:行者123 更新时间:2023-12-03 02:24:13 30 4
gpt4 key购买 nike

我正在尝试将过滤后的行选择到范围变量xRange中。我需要在该范围内进行一些操作。过滤之前有 10000 多行。过滤后为 5000 行。因此,在过滤之后,我尝试使用此方法来获取过滤范围,但该范围未按我的预期工作。

With Sheets("FullInvoice").Range("A1:N" & lRow)
.AutoFilter
.AutoFilter Field:=6, Criteria1:=">=" & fD, Criteria2:="<=" & lD

End With
Set xRange = Sheets("FullInvoice").Cells.SpecialCells(xlCellTypeVisible)

我在 Set xRange 行添加了一个断点。并尝试了 xRange.rows.count。但即使有 5000 行,它也只返回 1。所以我的目的是获取过滤后第一个单元格的单元格值。我怎样才能做到这一点。

当我尝试时

dim s as string
s=xRange.Range("A1").value

它返回整行的第一个单元格值。不是来自过滤后的行。

那么如何解决这种情况。

最佳答案

比这更容易。只需将 xrange 放入 With 中即可。另外,我会使用 Range.Cells(x,y) 而不是 Range.Range 来获取范围内的单元格:

With Sheets("FullInvoice").Range("A1:N" & lRow)
.AutoFilter
.AutoFilter Field:=6, Criteria1:=">=" & fD, Criteria2:="<=" & lD
Set xrange = .SpecialCells(xlCellTypeVisible)
End With

MsgBox xrange.Cells(1, 1)

关于vba - 自动筛选后获取可见范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49064809/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com