Come aggiornare automaticamente l'intervallo ordinato tramite VBA nel foglio di lavoro di Excel

Condividi ora:

L'ordinamento personalizzato in Excel è una funzionalità molto utile. In questo articolo parleremo di come aggiornare automaticamente l'ordinamento personalizzato in un intervallo utilizzando Excel VBA.

Quando usi l'ordinamento personalizzato, scoprirai che questa è una funzionalità straordinaria in Excel. Tuttavia, se utilizzi frequentemente questa funzione, potresti anche riscontrare un problema. Ordinare in un intervallo con determinati dati e informazioni. Quando aggiungi ulteriori dati e informazioni nell'intervallo, l'ordine nell'intervallo non cambierà automaticamente. L'immagine sotto mostra un esempio di tale condizione.Esempio

Quando aggiungi un nuovo set di dati nell'intervallo, non cambierà automaticamente il rango. Se si desidera comunque ordinare questo intervallo più ampio con i nuovi dati impostati in base agli stessi criteri, è necessario eseguire nuovamente il processo di ordinamento personalizzato. Puoi vedere che questo è molto problematico, specialmente quando devi aggiornare costantemente i dati e le informazioni nel foglio di lavoro. Ogni volta che aggiungi nuove informazioni all'intervallo, devi ordinare di nuovo. Per risolvere questo problema e completare rapidamente il tuo compito, puoi continuare a leggere questo articolo.

Registra macro

Quando i criteri di ordinamento personalizzato sono molto complessi, troverai difficile scrivere direttamente i codici VBA. Pertanto, ora puoi prima registrare una macro. E i codici in questa macro possono essere utilizzati in altre macro. Il processo di registrazione dei codici è molto semplice.

  1. Prima di registrare una macro, è necessario aggiungere la scheda di VBA nella barra multifunzione. Qui fai clic con il pulsante destro del mouse su una qualsiasi scheda nella barra multifunzione.
  2. E poi scegli "Personalizza il nastro" nel menu.Personalizza il nastro
  3. Ora nella finestra "Opzioni di Excel", seleziona l'opzione "Sviluppatore" nell'elenco delle "Schede principali".Sviluppatore
  4. Successivamente, fai clic su "OK" nella finestra. Pertanto, hai aggiunto la scheda nella barra multifunzione.
  5. Ora tornerai al foglio di lavoro. Fai clic sulla scheda "Sviluppatore" che hai aggiunto.
  6. E quindi fare clic sul pulsante "Registra macro" nella barra degli strumenti. Pertanto, verrà visualizzata la finestra "Registra macro".Registra macro

D'altra parte, puoi anche fare clic sul piccolo pulsante nella parte inferiore del foglio di lavoro per sostituire i 6 passaggi precedenti.Registra macro

  1. Ora nella finestra "Registra macro", inserisci il nome nella prima casella di testo. Assegna un tasto di scelta rapida se necessario. E poi aggiungi la descrizione in base alle tue necessità.Imposta macro
  2. Quindi fare clic su "OK". Pertanto, la macro inizia a registrare ogni operazione eseguita.
  3. Seleziona l'intervallo che devi ordinare nel foglio di lavoro.
  4. Fare clic sulla scheda "Casa".
  5. E quindi fare clic sul pulsante "Ordina e filtra" nella barra multifunzione.
  6. Nell'elenco a discesa, scegli l'opzione "Ordinamento personalizzato".Ordinamento personalizzato
  7. Nella finestra "Ordina", imposta i criteri in base alle tue necessità. Tutte le azioni verranno registrate nella macro.Riordina

Quando registri una macro, non eseguire passaggi aggiuntivi. In caso contrario, verranno registrati anche questi passaggi. E questo causerà problemi nella parte seguente.

  1. Dopo aver terminato l'impostazione nella finestra "Ordina", fare clic su "OK" per salvare le impostazioni.
  2. Ora fai di nuovo clic sulla scheda "Sviluppatore" nella barra multifunzione.
  3. E quindi fare clic sul pulsante "Interrompi registrazione". Quando il foglio di lavoro è nella condizione di registrazione di macro, il pulsante cambierà in "Interrompi registrazione".Smettere di registrazione

Puoi anche fare clic sul pulsante nella parte inferiore del foglio di lavoro per interrompere la registrazione della macro. Quindi, hai finito la registrazione. Tutti i criteri di ordinamento sono stati salvati nella Macro 1.

Usa le macro VBA di Excel

In questa parte, ti mostreremo come utilizzare le macro VBA per aggiornare l'ordinamento personalizzato nel tuo foglio di lavoro. E userai anche le macro registrate in questa parte.

  1. Fare clic sulla scheda "Sviluppatore" nella barra multifunzione.
  2. E quindi fare clic sul pulsante "Visual Basic" nella barra degli strumenti. Invece, puoi anche premere il pulsante "Alt + F11" sulla tastiera per sostituire i 2 passaggi.Visual Basic
  3. Nell'editor di Visual Basic, fai doppio clic sul foglio nell'area "VBAProject". In questo foglio, devi aggiornare l'ordinamento personalizzato. E nel tuo file effettivo, devi fare doppio clic sul foglio corrispondente.
  4. Ora inserisci i seguenti codici nell'area.
Private Sub Worksheet_Change(ByVal Target As Range)

End Sub
  1. E quindi inserisci i seguenti codici tra le due frasi VBA precedenti.
Application.ScreenUpdating = False
If Not Intersect(Target, Range("A1:C13")) Is Nothing Then

End If

Qui l'intervallo è stimato. Ci saranno 12 mesi per il volume delle vendite e, insieme alla prima riga dell'intestazione, inseriamo l'intervallo "A1:C13". Puoi anche inserire l'intervallo nei codici in base al tuo foglio di lavoro effettivo.

  1. In questo passaggio, apri il modulo 1 nell'editor. I codici in questo modulo sono il processo di ordinamento personalizzato che hai creato in precedenza. Puoi vedere che l'utilizzo della funzione di registrazione di macro può farti risparmiare molto tempo.
  2. Ora copia la parte principale in questo modulo.Copia
  3. Quindi fai doppio clic sul foglio di destinazione nella sezione "VBAProject".
  4. Successivamente, incolla i codici nei codici IF-END IF.
  5. E quindi modificare l'intervallo nei codici in base alle proprie esigenze. La macro registrata è un po' complicata e ridondante. Puoi anche modificarlo in base alle tue necessità. Pertanto, i codici VBA completi saranno così:
Private Sub Worksheet_Change(ByVal Target As Range)
  Application.ScreenUpdating = False
  If Not Intersect(Target, Range("A1:C13")) Is Nothing Then
    With ActiveWorkbook.Worksheets("Sheet1").Sort
      .SortFields.Clear
      .SortFields.Add Key:=Range("B2:B13"), _
         SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:=xlSortNormal
      .SortFields.Add Key:=Range("C2:C13"), _
         SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:=xlSortNormal
    End With
 
    With ActiveWorkbook.Worksheets("Sheet1").Sort
      .SetRange Range("A1:C13")
      .Header = xlYes
      .MatchCase = False
      .Orientation = xlTopToBottom
      .SortMethod = xlPinYin
      .Apply
    End With
  End If
End Sub

Aggiungiamo un altro WITH-END WITH nei codici. Pertanto, sarà più chiaro del risultato record. Se hai altri requisiti, puoi anche modificarlo in base alle tue effettive necessità. Devi stare attento quando modifichi i codici. Altrimenti produrrai un risultato sbagliato nel foglio di lavoro.

  1. Ora hai finito i codici VBA nell'editor. Puoi tornare al foglio di lavoro e testare il risultato. Quando aggiungi il mese successivo e i numeri corrispondenti nell'intervallo, l'ordinamento personalizzato si aggiornerà automaticamente.Test

Pertanto, non sarà mai necessario aggiornare manualmente l'ordinamento personalizzato ogni volta che si inseriscono nuovi elementi nell'intervallo di destinazione. D'altra parte, è necessario salvare questa cartella di lavoro come file Excel con macro abilitate. Altrimenti, si perderanno i codici se si salva come file normale.

Forniremo assistenza alle vittime di corruzione di Excel

Sappiamo tutti che Excel è molto potente e può aiutarti a completare il tuo lavoro in modo rapido e semplice. Ma l'applicazione Excel è ancora lontana dall'essere perfetta. A volte Excel si corromperà a causa di molti motivi diversi. Una volta che Excel si corrompe, non sarai in grado di completare le tue attività con questa applicazione. Per funzionare meglio, dovrai ripararlo il prima possibile.

La nostra azienda lavora da molti anni nell'area di recupero, in particolare il recupero di Excel. Pertanto, puoi rivolgerti al nostro staff tecnico per chiedere aiuto. Con anni di esperienza, possiamo facilmente capire il motivo che causa danni ai tuoi file. E per aiutarti meglio riparare i danni al file Excel xlsx, abbiamo sviluppato uno strumento di terze parti. Questo strumento è molto facile da manipolare e non devi preoccuparti del problema della privacy.

Introduzione dell'autore:

Anna Ma è un'esperta di recupero dati in DataNumen, Inc., che è il leader mondiale nelle tecnologie di recupero dati, tra cui riparare l'errore di Word docx e prodotti software di riparazione di Outlook. Per maggiori informazioni visita www.datanumen.com

Condividi ora:

I commenti sono chiusi.