0
好吧,所以我是VBA的新手(動作沒有問題 - 所以不是新的編碼,只是VBA),一直在努力學習我能做些什麼,並得到一些代碼爲我工作。我在Excel中有一個報告。第6行是標題,第7行是空白,第8行是附加信息;實際數據從第9行開始(B9:D9)向下。 Colum C包含我想要排序的數據。隨着新數據在後續行中輸入,我希望報告在完成D#中的數據輸入後自動重新排序。 (希望這是有道理的)Excel自動排序
這可能在VBA中嗎?還是我問太多?
非常感謝。
這就是我一直在使用:
`Private Sub Worksheet_Change(ByVal Target As Range)
Dim CCell As Range
Dim ActiveCellInTable As Boolean
Dim r As Single
Dim Value As Variant
Rows("9:38", "B:E").Select
Set CCell = Target
On Error Resume Next
ActiveCellInTable = (CCell.ListObject.Name = "Table2")
On Error GoTo 0
If ActiveCellInTable = True Then
r = Target.Row - Target.ListObject.Range.Row + 9
For c = 1 To ActiveSheet.ListObjects(CCell.ListObject.Name).Range.Columns.Count
If ActiveSheet.ListObjects(CCell.ListObject.Name).Range.Cells(r, c).Value = "" Then Exit Sub
Next c
With ActiveSheet.ListObjects(CCell.ListObject.Name).Sort
.SortFields.Clear
.SortFields.Add _
Key:=Range("Table2[[#All],[Item number]]"), SortOn:=xlSortOnValues, Order _
:=xlAscending, DataOption:=xlSortNormal
.Apply
End With
End If
End Sub`