|在本文中,您将学习如何使用VBA代码自动对多张工作表进行排序。

问:我想知道如何对多个工作表(不是全部)上的数据进行排序。

[.underline]#让我们举个例子:#我们有3个工作表(1月,2月和3月),并且在您在A列中输入任何信息时,只有Mar工作表需要自动排序。单击“开发人员”选项卡。从“代码”组中,选择“ Visual Basic”

在此工作簿中输入以下代码(不在任何工作表中)。这将在所有工作表中运行代码。

img1

私人子Workbook_SheetChange(以对象为ByByValSh,范围为ByVal目标)

关于错误继续Next

选择大小写ActiveSheet.Name

案例“ Jan”,“ Feb”

其他情况

如果没有相交(目标,范围(“ A:A”)),则

Range(“ A1”)。Sort Key1:= Range(“ A2”),_

Order1:= xl升序,标头:= xl是,_

| === OrderCustom:= 1,MatchCase:= False,_

方向:= xlTopToBottom

如果

结束

结束选择

结束子

这样,您可以在键入信息时轻松地按多个工作表中的任何特定列对数据进行排序。这是节省时间并确保报告看起来像您希望的样子的好方法。

img2