Suggerimento: le altre lingue sono tradotte da Google. Puoi visitare il English versione di questo link.
Connetti
x
or
x
x
Registratevi
x

or

Come eseguire la macro quando il valore della cella cambia in Excel?

Normalmente, in Excel, possiamo premere il tasto F5 o il pulsante Esegui per eseguire il codice VBA. Ma, hai mai provato a eseguire il codice macro specifico quando un valore di cella cambia? In questo articolo, introdurrò alcuni trucchi rapidi per affrontare questo lavoro in Excel.

Esegui o chiama la macro quando un valore specifico della cella cambia con il codice VBA

Esegui o chiama la macro quando un valore di cella cambia in un intervallo con codice VBA


Rimuovi tutte le macro da più cartelle di lavoro:

Kutools for Excel's Batch Rimuovi tutte le macro l'utilità può aiutarti a rimuovere tutte le macro da più cartelle di lavoro in base alle tue esigenze. Scarica e prova gratis Kutools per Excel ora!

doc esegue macro se la cella cambia 3

Kutools for Excel: con più di 200 pratici componenti aggiuntivi di Excel, liberi di provare senza limitazioni nei giorni 60. Scarica e prova gratis ora!


freccia blu bolla destra Esegui o chiama la macro quando un valore specifico della cella cambia con il codice VBA


Per eseguire un codice macro modificando un valore di cella, il seguente codice VBA può farti un favore, per favore fai come segue:

1. Fare clic con il pulsante destro del mouse sulla scheda del foglio in cui si desidera eseguire la macro se il valore della cella cambia e quindi scegliere Visualizza codice dal menu di scelta rapida e in quello aperto Microsoft Visual Basic per le applicazioni finestra, copiare e incollare il seguente codice nel modulo vuoto:

Codice VBA: eseguire la macro quando il valore della cella cambia:

Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address = "$A$1" Then
        Call Mymacro
    End If
End Sub

doc esegue macro se la cella cambia 1

Note: Nel codice sopra, A1 è la cella specifica su cui vuoi eseguire il codice, MyMacro è il nome della macro che si desidera eseguire. Si prega di cambiarli secondo le tue necessità.

2. E poi salva e chiudi la finestra del codice, ora, quando inserisci o modifichi il valore nella cella A1, il codice specifico verrà attivato in una sola volta.


freccia blu bolla destra Esegui o chiama la macro quando un valore di cella cambia in un intervallo con codice VBA

Se si desidera eseguire o attivare una macro quando il valore di una cella qualsiasi cambia in un intervallo di celle, il seguente codice potrebbe essere di aiuto.

1. Fare clic con il pulsante destro del mouse sulla scheda del foglio in cui si desidera eseguire la macro se il valore della cella cambia e quindi scegliere Visualizza codice dal menu di scelta rapida e in quello aperto Microsoft Visual Basic per le applicazioni finestra, copiare e incollare il seguente codice nel modulo vuoto:

Codice VBA: esegui macro quando un valore di cella cambia in un intervallo:

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("A1:B100")) Is Nothing Then
Call Mymacro
End If
End Sub

doc esegue macro se la cella cambia 2

Note: Nel codice sopra, A1: B100 sono le celle specifiche su cui vuoi eseguire il codice, MyMacro è il nome della macro che si desidera eseguire. Si prega di cambiarli secondo le tue necessità.

2. E poi salva e chiudi la finestra del codice, ora, quando inserisci o modifichi il valore in qualsiasi cella di A1: B100, il codice specifico verrà eseguito contemporaneamente.


Articoli correlati:

Come eseguire automaticamente la macro prima di stampare in Excel?

Come eseguire macro in base al valore della cella in Excel?

Come eseguire macro in base al valore selezionato dall'elenco a discesa in Excel?

Come eseguire macro facendo clic su collegamenti ipertestuali in Excel?

Come eseguire la macro quando il foglio è selezionato da una cartella di lavoro?


Kutools per Excel risolve la maggior parte dei problemi e aumenta la produttività del 80%

  • Riutilizzo: Inserire rapidamente formule complesse, grafici e tutto ciò che hai usato prima; Cifra le celle con password; Crea mailing list e invia email ...
  • Super Formula Bar (modifica facilmente più righe di testo e formula); Layout di lettura (leggere e modificare facilmente un gran numero di celle); Incolla su intervallo filtrato...
  • Unisci celle / righe / colonne senza perdere i dati; Contenuto delle celle divise; Combina righe / colonne duplicate... Previeni celle duplicate; Confronta le gamme...
  • Seleziona Duplica o Unica Righe; Seleziona righe vuote (tutte le celle sono vuote); Super Find e Fuzzy Find in molti libri di esercizi; Selezione casuale ...
  • Copia esatta Più celle senza modificare il riferimento alla formula; Creazione automatica di riferimenti a più fogli; Inserisci punti elenco, Caselle di controllo e altro ...
  • estrarre il testo, Aggiungi testo, Rimuovi per posizione, Rimuovi spazio; Creare e stampare subtotali di paging; Converti contenuto e commenti tra celle...
  • Super filtro (salva e applica schemi di filtro ad altri fogli); Ordinamento avanzato per mese / settimana / giorno, frequenza e altro; Filtro speciale di grassetto, corsivo ...
  • Combina cartelle di lavoro e fogli di lavoro; Unisci tabelle basate su colonne chiave; Dividi i dati in più fogli; Converti in batch xls, xlsx e PDF...
  • Oltre alle potenti funzionalità di 300. Supporta Office / Excel 2007-2019 e 365. Supporta tutte le lingue. Facile implementazione nella tua azienda o organizzazione. Funzioni complete di prova gratuita di 30-day.
kte tab 201905

Scheda Office Porta l'interfaccia a schede a Office e semplifica notevolmente il lavoro

  • Abilita la modifica e la lettura a schede in Word, Excel, PowerPoint, Editore, accesso, Visio e progetto.
  • Apri e crea più documenti in nuove schede della stessa finestra, piuttosto che in nuove finestre.
  • Aumenta la tua produttività di 50% e riduce centinaia di clic del mouse per te ogni giorno!
fondo officetab
Say something here...
symbols left.
You are guest ( Sign Up? )
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    roberto · 11 months ago
    Hola buenas tardes
    quisiera saber el codigo para que se active una macro cuando cambia el valor de una celda de una columna, pero este valor cambia por formula,sin que el usuario introduzca ningun valor.
  • To post as a guest, your comment is unpublished.
    DrCartwright · 1 years ago
    The macro that you are calling where do you have this located? I have mine in the Modules folder but when I put any value in any cell of the worksheet I get a Compile error saying:
    Expected variable or procedure, not module.

    Please help.
    • To post as a guest, your comment is unpublished.
      skyyang · 1 years ago
      Hi, DrCartwright,
      Sorry for replying to you so late.
      Yes, as you said, the macro code should be located into the Module, and you need to change the code name to your own name as following screenshot shown:
  • To post as a guest, your comment is unpublished.
    Kevin · 1 years ago
    Hey, useful code. I was thinking if it was possible to insert a ring around the cells that are changed as they are changed? And reset the circles every Monday ?
    • To post as a guest, your comment is unpublished.
      skyyang · 1 years ago
      Hello, Kevin,
      Here is no idea for solving your problem, if you have any good solution, please comment here.
  • To post as a guest, your comment is unpublished.
    Tom · 1 years ago
    Worked great for me! My dilemma is that I want it to be a relative reference macro and there is a difference between hitting enter to save the entry and delete to clear the cell.
  • To post as a guest, your comment is unpublished.
    Andrew Cothliff · 2 years ago
    This worked first time for me using data validation list which displays text based on the list selection.
  • To post as a guest, your comment is unpublished.
    Jach · 2 years ago
    Yeah the description says it should trigger when value changes, but the second code says it's when the value is nothing, and the first one doesn't trigger when a value changes either, but if I press F5 when looking at the code, it wants to trigger MyMacro, but doesn't seem to react to value changes as much as going from nothing to something or opposite.
  • To post as a guest, your comment is unpublished.
    Wayne Hyde · 2 years ago
    This module is not working for me. It says when the VALUE of the cell changes it will execute the code. I find if I TYPE into the cell it works, but if the value of tthe cell is change by a formula, for example a Counta, then it does not execute. Do you have a solution to execute a macro when the VALUE changes through a formula?
    Thanks,
    Wayne