C'è un modo per riordinare automaticamente? Ho l'aggiornamento automatico delle celle e, a seconda dei valori in arrivo, le classifiche cambiano. Sto cercando un modo per fare in modo che la tabella ricorra automaticamente (simile alla formattazione condizionale) senza dover fare clic sul pulsante riordina.
L'obiettivo qui è quello di realizzare tale puramente attraverso una funzione integrata Excel2013. Non sto cercando una soluzione che coinvolga celle aggiuntive che aiutano l'ordinamento, come Rank (), ...
modificare
Includo il codice di una macro che aggiorna la cartella di lavoro a intervalli prestabiliti e anche il codice all'interno di un foglio di lavoro che dovrebbe aggiornare le tabelle su quel foglio su Worksheet_Calculate. Ricevo un errore di runtime non sei sicuro di cosa sia sbagliato?
Public RunWhen As Double
Const frequency = 5
Const cRunWhat = "DoIt" ' the name of the procedure to run
Sub StartTimer()
RunWhen = Now + TimeSerial(0, 0, frequency)
Application.OnTime RunWhen, cRunWhat, Schedule:=True
End Sub
Sub DoIt()
Sheets("RAWDATA").Calculate
ActiveSheet.Calculate
StartTimer ' Reschedule the procedure
End Sub
Sub StopTimer()
On Error Resume Next
Application.OnTime RunWhen, cRunWhat, Schedule:=False
End Sub
e il codice che presumibilmente aggiorna le tabelle
Private Sub Worksheet_Calculate()
With Application
.ScreenUpdating = False
.EnableEvents = False
.DisplayAlerts = False
End With
ActiveSheet.ListObjects("Table2").AutoFilter.ApplyFilter
With ActiveWorkbook.Worksheets("Strategies").ListObjects("Table2").Sort
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
ActiveSheet.ListObjects("Table3").AutoFilter.ApplyFilter
With ActiveWorkbook.Worksheets("Strategies").ListObjects("Table3").Sort
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
With Application
.ScreenUpdating = True
.EnableEvents = True
.DisplayAlerts = True
End With
End Sub
Application.Screenupdating
Vero / Falso. Prima digiti False per disabilitare la visualizzazione di eventuali aggiornamenti apportati al foglio di lavoro e poi True per mostrarti cosa è stato fatto.
if
condizioni, quindi la macro non reagirà ogni volta che ti sposti in un'altra cella.