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

Cum se schimbă valoarea celulei făcând clic pe celulă?

Este posibil să schimbăm valoarea celulei făcând clic pe o celulă din Excel? De exemplu, când faceți clic pe o anumită celulă A1, pentru prima dată, se afișează un text „Excel”, dacă faceți din nou clic pe A1, este afișat un text „Word” și un text „Outlook” este afișat când faceți clic pe acesta celulă în a treia oară. În acest caz, valoarea din celula A1 va fi recurentă de la „Excel” la „Word” la „Outlook” la „Excel” ...... după cum se arată în următoarea captură de ecran:

modificați valoarea doc făcând clic pe 1

Schimbați valoarea celulei făcând clic pe o celulă cu cod VBA


săgeată albastru dreapta balon Schimbați valoarea celulei făcând clic pe o celulă cu cod VBA

Pentru a finaliza această sarcină în Excel, următorul cod VBA vă poate ajuta, vă rugăm să faceți următoarele:

1. Faceți clic dreapta pe fila de foaie pe care doriți să modificați valoarea celulei făcând clic pe și alegeți Afișați codul din meniul contextual și în meniul deschis Microsoft Visual Basic pentru aplicații fereastră, copiați și lipiți următorul cod în modulul gol:

Cod VBA: Modificați valoarea celulei făcând clic pe o celulă:

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

modificați valoarea doc făcând clic pe 2

notițe: În codul de mai sus, A1 este celula în care doriți să modificați valoarea făcând clic pe „Excel","Cuvânt","Perspectivă”Sunt valorile celulei pe care doriți să le afișați recurent, le puteți schimba în funcție de nevoile dvs.

2. După lipirea codului, apoi salvați codul și închideți fereastra. Acum, când faceți clic pe celula A1 pentru prima dată, se afișează simultan textul „Excel”, faceți clic din nou pe acesta, apare textul „Word”, se afișează textul „Outlook” dacă faceți clic pe ea a treia oară, vezi captura de ecran:

modificați valoarea doc făcând clic pe 1


Mai multe articole conexe:

Cum se filtrează datele doar făcând clic pe conținutul celulei din Excel?

Cum se sortează datele coloanei făcând clic pe antet în Excel?


Cele mai bune instrumente de productivitate Office

Kutools pentru Excel vă rezolvă majoritatea problemelor și vă crește productivitatea cu 80%

  • reutilizarea: Introduceți rapid formule complexe, diagrame și orice ai folosit anterior; Criptați celulele cu parola; Creați o listă de corespondență și trimiteți e-mailuri ...
  • Super Formula Bar (editați cu ușurință mai multe linii de text și formulă); Layout de citire (citiți și editați cu ușurință un număr mare de celule); Lipiți la interval filtrat...
  • Merge celule / rânduri / coloane fără a pierde date; Conținut de celule divizate; Combinați rânduri / coloane duplicate... Prevenirea celulelor duplicate; Comparați gamele...
  • Selectați Duplicat sau Unic Rânduri; Selectați Rânduri goale (toate celulele sunt goale); Super Find și Fuzzy Find în multe cărți de lucru; Selectare aleatorie ...
  • Copie exactă Mai multe celule fără modificarea referinței formulelor; Creați automat referințe la foi multiple; Introduceți gloanțe, Casete de selectare și multe altele ...
  • Extrageți textul, Adăugați text, eliminați după poziție, Eliminați spațiul; Creați și imprimați subtotaluri de paginare; Convertiți conținutul dintre celule și comentarii...
  • Super Filtru (salvați și aplicați scheme de filtrare altor foi); Sortare avansată după lună / săptămână / zi, frecvență și multe altele; Filtru special cu bold, italic ...
  • Combinați cărți de lucru și foi de lucru; Merge Tables pe baza coloanelor cheie; Împărțiți datele în mai multe foi; Conversia în loturi xls, xlsx și PDF...
  • Peste 300 de funcții puternice. Suportă Office / Excel 2007-2021 și 365. Acceptă toate limbile. Implementare ușoară în întreprinderea sau organizația dvs. Funcții complete Probă gratuită de 30 de zile. Garanție de returnare a banilor de 60 de zile.
fila kte 201905

Fila Office aduce interfața cu file în Office și vă face munca mult mai ușoară

  • Activați editarea și citirea cu file în Word, Excel, PowerPoint, Publisher, Access, Visio și Project.
  • Deschideți și creați mai multe documente în filele noi ale aceleiași ferestre, mai degrabă decât în ​​ferestrele noi.
  • Vă crește productivitatea cu 50% și reduce sute de clicuri de mouse pentru dvs. în fiecare zi!
fundul officetab
Comentarii (7)
Încă nu există evaluări. Fii primul care evaluează!
Acest comentariu a fost redus la minimum de moderatorul de pe site
Încerc să aplic acest lucru la o întreagă coloană de celule individuale, nu doar la o singură celulă. Este posibil? Când schimb intervalul de la „A1” la „A1:A100” nu se întâmplă nimic când dau clic pe celulele din acel interval.
Acest comentariu a fost redus la minimum de moderatorul de pe site
Am făcut-o dar nu voi spune nimănui MUWAHAHAHAHAHAHAHAHAHA
Acest comentariu a fost redus la minimum de moderatorul de pe site
Puteți face acest lucru declarând intervalul pe care doriți să îl aveți ca KeyCells și apoi introduceți-l în Metoda Application.Intersection. Acest lucru vă va permite să modificați valoarea la alegere din toate celulele. A funcționat pentru mine, dar sunt prost să explic ^^

Dim KeyCells ca Interval

Set KeyCells = Range("A1:A100")

Dacă nu aplicație.Intersect(KeyCells, Range(Target.Address)) nu este nimic, atunci

Selectați caz .Valoare

...
Acest comentariu a fost redus la minimum de moderatorul de pe site
Puteți face acest lucru declarând intervalul pe care doriți să îl aveți ca KeyCells și apoi introduceți-l în Metoda Application.Intersection. Acest lucru vă va permite să modificați valoarea la alegere din toate celulele. A funcționat pentru mine, dar sunt prost să explic ^^


Application.EnableEvents = Fals
Cu țintă


Dim KeyCells ca Interval

Set KeyCells = Range("A1:A100")

Dacă nu aplicație.Intersect(KeyCells, Range(Target.Address)) nu este nimic, atunci

Selectați caz .Valoare

...
Acest comentariu a fost redus la minimum de moderatorul de pe site
Acesta este codul final care a funcționat pentru mine. Îl folosesc pentru a verifica o celulă atunci când un articol este finalizat.
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
  Application.EnableEvents = Fals
    Cu țintă
      Dim KeyCells As Range
      Set KeyCells = Range("D6:D8000")
      Dacă nu aplicație.Intersect(KeyCells, Range(Target.Address)) nu este nimic, atunci
        Selectați caz .Valoare
          Cazul „ü”
            .Valoare = ""
          Cazul „”
            .Valoare = „ü”
        Selectare sfârșit
      Final, dacă
    Se termina cu
  Application.EnableEvents = Adevărat
End Sub
Acest comentariu a fost redus la minimum de moderatorul de pe site
Acest comentariu a fost redus la minimum de moderatorul de pe site
Aceste informații sunt grozave, mulțumesc pentru contribuția tuturor! Există posibilitatea de a aplica același tip de abordare cu o valoare de căutare sau de index\potrivire?

De exemplu, dacă fac clic pe o valoare din A1, VBA poate fi configurat să indexeze acea valoare într-o altă coloană a foii de lucru și să afișeze o valoare potrivită în B1? Iti multumesc din nou!
Nu există comentarii postate aici încă
Lăsa comentarii
Postare ca invitat
×
Evaluează această postare:
0   Caractere
Locații sugerate

Urmărește-ne

Copyright © 2009 - www.extendoffice.com. | Toate drepturile rezervate. Cu sprijinul ExtendOffice. | Harta site-ului
Microsoft și sigla Office sunt mărci comerciale sau mărci comerciale înregistrate ale Microsoft Corporation în Statele Unite și / sau în alte țări.
Protejat de Sectigo SSL