Note: The other languages of the website are Google-translated. Back to English
English English

Come modificare il valore della cella facendo clic sulla cella?

È possibile modificare il valore della cella facendo clic su una cella in Excel? Ad esempio, quando fai clic su una cella specifica A1, la prima volta, viene visualizzato un testo "Excel", se fai di nuovo clic su A1, viene visualizzato un testo "Word" e un testo "Outlook" viene visualizzato quando fai clic su questo cella per la terza volta. In questo caso, il valore nella cella A1 sarà ricorrente da "Excel" a "Word" da "Outlook" a "Excel" ... come mostrato nella seguente schermata:

doc cambia valore facendo clic 1

Modifica il valore della cella facendo clic su una cella con codice VBA


freccia blu freccia destra Modifica il valore della cella facendo clic su una cella con codice VBA


Per completare questa attività in Excel, il seguente codice VBA può aiutarti, per favore fai come segue:

1. Fare clic con il pulsante destro del mouse sulla scheda del foglio su cui si desidera modificare il valore della cella facendo clic su e scegliere Visualizza codice dal menu contestuale e nel file Microsoft Visual Basic, Applications Edition finestra, copia e incolla il seguente codice nel modulo vuoto:

Codice VBA: modifica il valore della cella facendo clic su una cella:

Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
'Updateby Extendoffice
  Application.EnableEvents = False
  With Target
  If .Address = Range("A1").Address Then
    Select Case .Value
      Case "Excel"
        .Value = "Word"
      Case "Word"
        .Value = "Outlook"
      Case "Outlook"
        .Value = "Excel"
      Case Else
        .Value = "Word"
    End Select
  End If
  End With
  Range("A2").Select
  Application.EnableEvents = True
End Sub

doc cambia valore facendo clic 2

Note:: Nel codice sopra, A1 è la cella in cui desideri modificare il valore facendo clic su "Excel","Word","Outlook"Sono i valori delle celle che desideri visualizzare in modo ricorrente, puoi modificarli secondo le tue necessità.

2. Dopo aver incollato il codice, salva il codice e chiudi la finestra. Ora, quando si fa clic sulla cella A1 per la prima volta, viene visualizzato immediatamente il testo "Excel", fare nuovamente clic su di esso, viene visualizzato il testo "Word", viene visualizzato il testo "Outlook" se si fa clic per la terza volta, vedi screenshot:

doc cambia valore facendo clic 1


Altri articoli correlati:

Come filtrare i dati semplicemente facendo clic sul contenuto della cella in Excel?

Come ordinare i dati delle colonne facendo clic sull'intestazione in Excel?


I migliori strumenti per la produttività in ufficio

Kutools per Excel risolve la maggior parte dei tuoi problemi e aumenta la tua produttività dell'80%

  • Riutilizzo: Inserisci rapidamente formule complesse, grafici e tutto ciò che hai usato prima; Crittografa celle con password; Crea mailing list e invia email ...
  • Bar Super Formula (modifica facilmente più righe di testo e formula); Layout di lettura (leggi e modifica facilmente un gran numero di celle); Incolla su intervallo filtrato...
  • Unisci celle / righe / colonne senza perdere dati; Contenuto delle celle divise; Combina righe / colonne duplicate... Impedisci celle duplicate; Confronta intervalli...
  • Seleziona Duplica o Unico Righe; Seleziona Righe vuote (tutte le celle sono vuote); Super Find e Fuzzy Find in molte cartelle di lavoro; Selezione casuale ...
  • Copia esatta Più celle senza modificare il riferimento della formula; Riferimenti di creazione automatica a più fogli; Inserisci punti elenco, Caselle di controllo e altro ...
  • Estrai testo, Aggiungi testo, Rimuovi per posizione, Rimuovi spazio; Creare e stampare totali parziali di paging; Converti contenuto e commenti tra celle...
  • Super filtro (salva e applica schemi di filtri ad altri fogli); Ordinamento avanzato per mese / settimana / giorno, frequenza e altro; Filtro speciale in grassetto, corsivo ...
  • Combina cartelle di lavoro e fogli di lavoro; Unisci tabelle in base a colonne chiave; Suddividi i dati in più fogli; Conversione in batch xls, xlsx e PDF...
  • Più di 300 potenti funzionalità. Supporta Office / Excel 2007-2019 e 365. Supporta tutte le lingue. Facile distribuzione nella tua azienda o organizzazione. Funzionalità complete Prova gratuita di 30 giorni. Garanzia di rimborso di 60 giorni.
scheda kte 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, Publisher, Access, Visio e Project.
  • Apri e crea più documenti in nuove schede della stessa finestra, piuttosto che in nuove finestre.
  • Aumenta la produttività del 50% e riduce centinaia di clic del mouse ogni giorno!
fondo officetab
Commenti (7)
Ancora nessuna valutazione. Puoi essere il primo a votare!
Questo commento è stato fatto dal moderatore sul sito
Sto cercando di applicarlo a un'intera colonna di singole celle, non solo a una cella. È possibile? Quando cambio l'intervallo da "A1" a "A1: A100" non accade nulla quando faccio clic sulle celle in quell'intervallo.
Questo commento è stato fatto dal moderatore sul sito
L'ho fatto ma non lo dirò a nessuno MUWAHAHAHAHAHAHAHAHAHAHA
Questo commento è stato fatto dal moderatore sul sito
Puoi farlo dichiarando l'intervallo che desideri avere come KeyCells e quindi inserirlo nel metodo Application.Intersection. Ciò ti consentirà di modificare il valore di tua scelta da tutte le celle. Ha funzionato per me, ma non sono bravo a spiegare ^^

Dim KeyCells come intervallo

Imposta KeyCells = Intervallo ("A1:A100")

Se non Application.Intersect(KeyCells, Range(Target.Address)) non è niente allora

Selezionare Caso .Valore

...
Questo commento è stato fatto dal moderatore sul sito
Puoi farlo dichiarando l'intervallo che desideri avere come KeyCells e quindi inserirlo nel metodo Application.Intersection. Ciò ti consentirà di modificare il valore di tua scelta da tutte le celle. Ha funzionato per me, ma non sono bravo a spiegare ^^


Application.EnableEvents = False
Con Obiettivo


Dim KeyCells come intervallo

Imposta KeyCells = Intervallo ("A1:A100")

Se non Application.Intersect(KeyCells, Range(Target.Address)) non è niente allora

Selezionare Caso .Valore

...
Questo commento è stato fatto dal moderatore sul sito
Questo è il codice finale che ha funzionato per me. Lo uso per controllare una cella quando un elemento è completato.
Private Sub Worksheet_SelectionChange (ByVal Target As Range)
  Application.EnableEvents = False
    Con Obiettivo
      Dim KeyCells come intervallo
      Imposta KeyCells = Intervallo ("D6:D8000")
      Se non Application.Intersect(KeyCells, Range(Target.Address)) non è niente allora
        Selezionare Caso .Valore
          Caso "ü"
            .Valore = ""
          Caso ""
            .Valore = "ü"
        End Select
      End If
    Fine Con
  Application.EnableEvents = True
End Sub
Questo commento è stato fatto dal moderatore sul sito
Questa è un'ottima informazione, grazie per il contributo di tutti! È possibile applicare questo stesso tipo di approccio con un valore di ricerca o indice\corrispondenza?

Ad esempio, se faccio clic su un valore in A1, è possibile configurare il VBA per indicizzare quel valore in un'altra colonna del foglio di lavoro e visualizzare un valore corrispondente in B1? Grazie ancora!
Non ci sono ancora commenti pubblicati qui
Lasciate i vostri commenti
Pubblicazione come ospite
×
Valuta questo post:
0   Personaggi
Posizioni suggerite