如何选择并输出工作表或过滤列表的第一行和最后一行?

如何选择并输出工作表或过滤列表的第一行和最后一行?

我是 VBA 新手,不知道从哪里开始。

我有两列数据:

Team Member Time
A             1
A             2
A             3
A             4

我只对该电子表格的第一行和最后一行感兴趣,我预期的输出是这样的:

Team Member Time
A             1
A             4

我的电子表格中的总行数不断变化,因此没有固定的最后一行。

是否有简单的 Excel 函数可以帮助我解决这个问题,我可以使用宏来记录它,或者我应该为此使用 VBA 创建一个函数?

以下是仅选择第 2 行和第 3 行并将其删除的宏:

Sub Del()
Rows("3:4").Select
    Selection.Delete Shift:=xlUp
    Range("A1").Select
End Sub

但当行数变化时这显然不起作用。

答案1

考虑到您正在尝试使用 VBA 来简化您的任务,这很棒!您的宏可能很简单,但这是一个很好的开始。

下面是一个宏,您可以将其粘贴到ThisWorkbookVBA 资源管理器中。运行时,它将找到最后一行,选择第一行和最后一行之间的范围(假设 A1 始终是第一行),然后删除该范围,只剩下第一行和最后一行。

Sub Del()

Dim sht As Worksheet
Dim LastRow As Long
Dim DataRange As Range

Set sht = ThisWorkbook.ActiveSheet

LastRow = sht.Cells(sht.Rows.Count, "A").End(xlUp).Row
LastRow = LastRow - 1
Set DataRange = Range("A2:B" & LastRow)

DataRange.Delete

End Sub

注意:此宏会删除数据!使用时请自负风险。

答案2

使用如下数据:

在此处输入图片描述

C2进入:

=IF(ROW()=2,"alpha",IF(B3="","omega",""))

并抄下来。然后自动过滤柱子C显示α欧米茄

在此处输入图片描述

相关内容