建立巨集以按輸入日期對項目進行排序(從公式觸發的結果)

建立巨集以按輸入日期對項目進行排序(從公式觸發的結果)

我有工作表 1,在工作表上輸入新數據,在參考表中,我從工作表 1 中提取相同的值,以便可以按輸入時間對它們進行排序。我的目標是在工作表 1 上顯示在工作表 1 上輸入的最後 10 個項目。 。是否可以將其與新的巨集結合起來,以便我可以在一個地方輸入資料並在其他地方對其進行排序?

Private Sub Worksheet_Change(ByVal Target As Range)
    Dim A As Range
    Dim AB As Range
    Set A = Range("A:A")
    Set AB = Range("A:B")

    If Intersect(Target, A) Is Nothing Then Exit Sub
    If Target.Count > 1 Then Exit Sub
    Application.EnableEvents = False
        Target.Offset(0, 1) = Now
        AB.Sort Key1:=Range("B1"), Order1:=xlDescending, Header:=xlNo, _
            OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
            DataOption1:=xlSortNormal
    Application.EnableEvents = True
End Sub

答案1

聽起來您的問題是,您的巨集程式碼不會因一張工作表中的變更而觸發,因為該工作表僅憑藉公式引用而變更。如果是這種情況,您是否可以不將程式碼(或呼叫任何您需要的子程式)從Workbook_SheetChange()代替? (《工作手冊》工作表更改()當你改變時會觸發事件任何床單)。您可以使用以下命令檢查已變更的工作表名稱從這個子內。並使用取得變更的儲存格位址目標地址

相關內容