使用VBA进行sorting操作?

如何使用VBA代码执行sorting操作? 任何定义的macros来执行?

我必须按升序对我的列B进行sorting,其中包含值。 以及在其中有date和时间最早到最新的C列。

我强烈build议你使用macros录像机玩游戏。 如果您在Excel中看不到开发人员选项卡,请转至Excel选项,并将其置于“常用”选项卡中。 点击打开它。

按录制macros,然后做你想做的事情(如突出显示一列,按function区上的sorting,然后按升序sorting),然后停止录制。 进入VBA(Alt + F11),查看结果代码,学习如何编写相同函数的语法。

例如,sortingdate会导致这样的事情:

Sub Macro1() Columns("F:F").Select ActiveWorkbook.Worksheets("Sheet1").Sort.SortFields.Clear ActiveWorkbook.Worksheets("Sheet1").Sort.SortFields.Add Key:=Range("F1:F5"), _ SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal With ActiveWorkbook.Worksheets("Sheet1").Sort .SetRange Range("F1:F5") .Header = xlGuess .MatchCase = False .Orientation = xlTopToBottom .SortMethod = xlPinYin .Apply End With End Sub 

由于您在运行macros时已经select了要sorting的列,因此可以清理代码,如下所示:

 Sub SortAscending() With ActiveWorkbook.Worksheets("Sheet1").Sort .Header = xlGuess .MatchCase = False .Orientation = xlTopToBottom .SortMethod = xlPinYin .Apply End With End Sub 

sortingdate可以使用相同的代码,因为它是升序:

诀窍是记住你不需要select你已经select的代码范围。 祝你好运,并与录音机玩得开心,这确实有助于这样的情况。

另外,Excel VBA上有很多书籍,我build议你在书店或数字化的地方选一本书。 那里的大部分书籍都会引导你了解VBA的基础知识,主要关键字,使用logging器,然后最终远到足够远的地方,这样你就可以编写自己的代码(logging器代码几乎没有优化或完美,但对于学习语言(语法)做一些工作表函数)。