0
使用下面的代码,它似乎在过去一直工作到现在...最终目标是按特定顺序对选定表格进行排序。表格排序宏(仅移动选定的表格)不起作用
Sub SortWksByCell()
Dim i As Integer
Dim j As Integer
Dim wss As Sheets
Set wss = ActiveWindow.SelectedSheets
For i = 1 To wss.Count
For j = i + 1 To wss.Count
If UCase(wss(i).Range("q1")) <= _
UCase(wss(j).Range("q1")) Then
wss(j).Move Before:=wss(i)
End If
Next
Next
End Sub
它适合我。运行它时什么不起作用? – YowE3K
它几乎就像中途停止,但我没有得到任何错误。表单移动但是以无意义的顺序移动。注意:我正在使用60张以上的纸张。 – chs
好的 - 我只检查了代码成功运行 - 我依赖于你的问题中的第一句话,暗示逻辑是正确的,它只是一个执行错误,但它听起来像你有一个逻辑错误,因此(因此它从来没有工作,或只为有限的一组输入条件工作)。在再次查看代码时,排序不起作用,因为您永远不会在'wss'中更改工作表的位置 - 您只是在工作簿中更改其职位。 – YowE3K