Excel 过滤后自动编号或重新编号
你可能已经观察到,当我们通过使用表格中的过滤器得到一个项目列表时,如果它们包含任何序列号,它们将不会被调整,但我们可以通过使用vba代码使它们按顺序排列;这无法使用Excel提供的默认操作来完成。请阅读本教程,了解如何在Excel中进行过滤后自动编号或重新编号。
自动编号或过滤后重新编号
这里我们将插入一个VBA模块,然后运行它来完成我们的任务。让我们看看一个简单的过程,了解我们如何在VBScript应用程序的帮助下,在Excel中过滤后自动编号或重新编号。
第1步
假设我们有一个Excel表,在应用过滤器后有一个表格,类似于下图中的表格。
现在要解决这个问题,右击工作表名称,选择查看代码,打开vba应用程序,然后点击插入,选择模块,然后在文本框中输入程序,如下图所示。
示例
Sub Renumber()
'Update by Nirmal
Dim Rng As Range
Dim WorkRng As Range
On Error Resume Next
xTitleId = "Select the range"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
Set WorkRng = WorkRng.Columns(1).SpecialCells(xlCellTypeVisible)
xIndex = 1
For Each Rng In WorkRng
Rng.Value = xIndex
xIndex = xIndex + 1
Next
End Sub
第2步
现在将工作表保存为支持宏的工作表,点击F5弹出名为 “选择范围 “的窗口,选择你要更新的数字范围,如下图所示。
而且,我们的最终结果将看起来像下面的图片。
结论
在本教程中,我们用一个简单的例子来演示如何在Excel中过滤后自动编号或重新编号,以突出某一组数据。