excel - 如何找到列的第 n 个非空白行?
问题描述
好的...长话短说,我在代码中发现了一个错误,我认为我可以简单地找到“A”列(即第 213 行)中的最后一行。但是,我实际上需要第 219 行。这个间隙可能不一致,但是“A”列中有 17 个非空白单元格(第 17 个非空白单元格是第 213 行)和“B 列中的第 17 个非空白单元格” " 是第 219 行(这是我需要提取的行号)。所以我找到了这个公式:
TagCount = sheet(1).Range("A:A").Cells.SpecialCells(xlCellTypeConstants).Count
这将返回 17...
现在我需要能够在“B”列中找到第 17 个(或任何 TagCount)非空白单元格(实际上我只需要行号)。
解决方案
另一种可能的方法(如果我理解正确的话)是使用以下方法。我正在评估一个 Excel 公式,该公式将在 Column 中找到第 n 个单元格,B
其中第 n 个单元格是 Column 中常量数的计数A
。这是一个数组公式,可以在工作表中评估,但在 VBA 中评估它,因为它是一个 VBA 问题。
Dim BRng As Range, nthCell As Range
Dim EvalStr As String
With Sheets(1)
Set BRng = .Range(.Cells(1, 2), .Cells(.Cells(.Rows.Count, 2).End(xlUp).Row, 2))
End With
EvalStr = "=INDEX(" & BRng.Address & ",SMALL(ROW(" & BRng.Address & ")+(100*(" & BRng.Address & "="""")), COUNTA(A:A)))"
Set nthCell = Application.Evaluate(EvalStr)
MsgBox nthCell.Address
推荐阅读
- redux - Redux 传播 InitialState 模式
- c# - 如何在 ctypes 库 python 中获取我的 C# dll 的依赖关系?
- python-3.9 - 如何在 M1 Mac 上本地运行 Python 3.9.1?
- ssl - TLS 连接的 CA 证书 node02.myqtthub.com/8883
- flutter - Flutter - 当想要更改初始值时,TextFormField 崩溃应用程序
- php - 如何将增量运算符连接到 PHP
- c# - 出了点问题“错误 CS1513:} 预期”
- java - 如何计算所有用户输入数据的费用?
- mysql - MySQL reset id custom id based on current year
- python - 修改数据框图上的 x 轴值