gpt4 book ai didi

excel - 如何在Excel VBA中查找连续数据的单元格?

转载 作者:行者123 更新时间:2023-12-02 14:17:40 25 4
gpt4 key购买 nike

alt text

给定图像...如果我知道有一些数据从 Range("B3") 开始。
如何找到单元格 E3 之前具有连续数据的单元格?由于 F3 为空白,因此不应考虑 G3 及以后的内容。结果可以是范围对象 (B3:E3) 或单元格计数(在本例中为 4)。

通过将 B3 设置为事件单元格并执行...

Range(ActiveCell, ActiveCell.End(xlToRight).Count

我确实得到了计数,但是这种方法并不可靠,如果只有 B3 有数据,它就会对单元格进行计数,直到工作表末尾。
当然,这也可以通过循环单元格来实现,但我宁愿使用工作表函数或其他一些有效的方法。

最佳答案

您似乎正在尝试确定从单元格 B3 开始的一行中使用的连续列数。

下面的代码将根据您的数据返回 $B$3:$E$3 和 4 的值。如果只有单元格 B3 有数据,它将返回 $B$3 和 1。

Sub GetDataArea()

Dim strCellToTest As String
Dim rngMyRange As Range
Dim lngColumns As Long

strCellToTest = "B3"

lngColumns = ActiveWorkbook.ActiveSheet.Range("" & strCellToTest).End(xlToRight).Column - 1

If lngColumns >= 256 Then
Set rngMyRange = ActiveWorkbook.ActiveSheet.Range("" & strCellToTest)
lngColumns = 1
Else
Set rngMyRange = ActiveWorkbook.ActiveSheet.Range _
(strCellToTest & ":" & Range("" & strCellToTest).Offset(0, lngColumns - 1).Address)
End If

MsgBox "Columns: " & lngColumns & vbCr & vbLf & "Range: " & rngMyRange.Address

End Sub

关于excel - 如何在Excel VBA中查找连续数据的单元格?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1592536/

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