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

Jak zmienić wartość komórki, klikając komórkę?

Czy możemy zmienić wartość komórki, klikając komórkę w programie Excel? Na przykład, gdy klikniesz określoną komórkę A1, za pierwszym razem wyświetli się tekst „Excel”, jeśli ponownie klikniesz A1, zostanie wyświetlony tekst „Word”, a po kliknięciu zostanie wyświetlony tekst „Outlook” komórka po raz trzeci. W tym przypadku wartość w komórce A1 będzie powtarzać się z „Excel” na „Word” na „Outlook” na „Excel” …… jak pokazano na poniższym zrzucie ekranu:

doc zmień wartość, klikając 1

Zmień wartość komórki, klikając komórkę z kodem VBA


strzałka niebieski prawy bąbelek Zmień wartość komórki, klikając komórkę z kodem VBA

Aby zakończyć to zadanie w programie Excel, poniższy kod VBA może ci pomóc, wykonaj następujące czynności:

1. Kliknij prawym przyciskiem myszy kartę arkusza, którą chcesz zmienić wartość komórki, klikając i wybierz Wyświetl kod z menu kontekstowego oraz w otwartym Microsoft Visual Basic for Applications w oknie, skopiuj i wklej następujący kod do pustego modułu:

Kod VBA: Zmień wartość komórki, klikając komórkę:

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 zmień wartość, klikając 2

Uwagi: W powyższym kodzie, A1 to komórka, w której chcesz zmienić wartość, klikając „przewyższać","słowo","perspektywy”To wartości komórek, które chcesz wyświetlać cyklicznie, możesz je zmienić według potrzeb.

2. Po wklejeniu kodu zapisz kod i zamknij okno. Teraz, gdy klikniesz komórkę A1 po raz pierwszy, od razu pojawi się tekst „Excel”, kliknij go ponownie, pojawi się tekst „Word”, tekst „Outlook” pojawi się, jeśli klikniesz go po raz trzeci, zobacz zrzut ekranu:

doc zmień wartość, klikając 1


Więcej powiązanych artykułów:

Jak filtrować dane, klikając zawartość komórki w programie Excel?

Jak sortować dane kolumn, klikając nagłówek w programie Excel?


Najlepsze narzędzia biurowe

Kutools dla programu Excel rozwiązuje większość problemów i zwiększa produktywność o 80%

  • Ponowne użycie: Szybko włóż złożone wzory, wykresy i wszystko, czego używałeś wcześniej; Szyfruj komórki z hasłem; Utwórz listę mailingową i wysyłaj e-maile ...
  • Pasek Super Formula (łatwo edytować wiele wierszy tekstu i formuły); Układ do czytania (łatwe odczytywanie i edytowanie dużej liczby komórek); Wklej do filtrowanego zakresu...
  • Scal komórki / wiersze / kolumny bez utraty danych; Podziel zawartość komórek; Połącz zduplikowane wiersze / kolumny... Zapobiegaj zduplikowanym komórkom; Porównaj zakresy...
  • Wybierz Duplikat lub Unikalny Wydziwianie; Wybierz puste wiersze (wszystkie komórki są puste); Super Find i Fuzzy Find w wielu zeszytach ćwiczeń; Losowy wybór ...
  • Dokładna kopia Wiele komórek bez zmiany odwołania do formuły; Automatyczne tworzenie odniesień do wielu arkuszy; Wstaw punktory, Pola wyboru i nie tylko ...
  • Wyodrębnij tekst, Dodaj tekst, Usuń według pozycji, Usuń przestrzeń; Tworzenie i drukowanie podsumowań stronicowania; Konwertuj zawartość komórek i komentarze...
  • Super filtr (zapisz i zastosuj schematy filtrów do innych arkuszy); Zaawansowane sortowanie według miesiąca / tygodnia / dnia, częstotliwości i innych; Specjalny filtr pogrubieniem, kursywą ...
  • Połącz skoroszyty i arkusze robocze; Scal tabele na podstawie kluczowych kolumn; Podziel dane na wiele arkuszy; Konwersja wsadowa xls, xlsx i PDF...
  • Ponad 300 zaawansowanych funkcji. Obsługuje Office / Excel 2007-2021 i 365. Obsługuje wszystkie języki. Łatwe wdrażanie w przedsiębiorstwie lub organizacji. Pełne funkcje 30-dniowa bezpłatna wersja próbna. 60-dniowa gwarancja zwrotu pieniędzy.
karta kte 201905

Karta Office wprowadza interfejs z zakładkami do pakietu Office i znacznie ułatwia pracę

  • Włącz edycję i czytanie na kartach w programach Word, Excel, PowerPoint, Publisher, Access, Visio i Project.
  • Otwieraj i twórz wiele dokumentów w nowych kartach tego samego okna, a nie w nowych oknach.
  • Zwiększa produktywność o 50% i redukuje setki kliknięć myszką każdego dnia!
officetab dół
Sortuj komentarze według
Komentarze (7)
Brak ocen. Oceń jako pierwszy!
Ten komentarz został zminimalizowany przez moderatora na stronie
Próbuję zastosować to do całej kolumny pojedynczych komórek, a nie tylko jednej komórki. czy to możliwe? Kiedy zmieniam zakres z „A1” na „A1:A100”, nic się nie dzieje, gdy klikam komórki w tym zakresie.
Ten komentarz został zminimalizowany przez moderatora na stronie
Zrobiłem to, ale nikomu nie powiem MUWAHAHAHAHAHAHAHAHAHA
Ten komentarz został zminimalizowany przez moderatora na stronie
Możesz to zrobić, deklarując zakres, który chcesz mieć jako KeyCells, a następnie umieszczając go w metodzie Application.Intersection. To pozwoli ci zmienić wybraną wartość ze wszystkich komórek. Pracował dla mnie, ale jestem kiepski w wyjaśnianiu ^^

Dim KeyCells jako zakres

Ustaw KeyCells = Zakres("A1:A100")

Jeśli nie Application.Intersect(KeyCells, Range(Target.Address)) to nic, wtedy

Wybierz sprawę .Wartość

...
Ten komentarz został zminimalizowany przez moderatora na stronie
Możesz to zrobić, deklarując zakres, który chcesz mieć jako KeyCells, a następnie umieszczając go w metodzie Application.Intersection. To pozwoli ci zmienić wybraną wartość ze wszystkich komórek. Pracował dla mnie, ale jestem kiepski w wyjaśnianiu ^^


Application.EnableEvents = Fałsz
Z celem


Dim KeyCells jako zakres

Ustaw KeyCells = Zakres("A1:A100")

Jeśli nie Application.Intersect(KeyCells, Range(Target.Address)) to nic, wtedy

Wybierz sprawę .Wartość

...
Ten komentarz został zminimalizowany przez moderatora na stronie
To jest ostatni kod, który dla mnie zadziałał. Używam go do sprawdzania komórki, gdy element jest skończony.
Private Sub Worksheet_SelectionChange (ByVal Target As Range)
  Application.EnableEvents = Fałsz
    Z celem
      Dim KeyCells jako zakres
      Ustaw KeyCells = Zakres("D6:D8000")
      Jeśli nie Application.Intersect(KeyCells, Range(Target.Address)) to nic, wtedy
        Wybierz sprawę .Wartość
          Przypadek „ü”
            .Wartość = ""
          Sprawa ""
            .Wartość = „ü”
        End Select
      End If
    Kończyć z
  Application.EnableEvents = True
End Sub
Ten komentarz został zminimalizowany przez moderatora na stronie
To świetna informacja, dzięki za wkład wszystkich! Czy istnieje możliwość zastosowania tego samego typu podejścia z wartością odnośnika lub indeks\dopasowanie?

Na przykład, jeśli kliknę wartość w A1, czy VBA może być skonfigurowany do indeksowania tej wartości w innej kolumnie arkusza i wyświetlania dopasowanej wartości w B1? Jeszcze raz dziękuję!
Nie ma tu jeszcze żadnych komentarzy
Zostaw swój komentarz
Publikowanie jako gość
×
Oceń ten post:
0   Postacie
Sugerowane lokalizacje

Bądż na bieżąco

Prawa autorskie © 2009 - www.extendoffice.com. | Wszelkie prawa zastrzeżone. Zasilany przez ExtendOffice, | Mapa strony
Microsoft i logo Office są znakami towarowymi lub zastrzeżonymi znakami towarowymi Microsoft Corporation w Stanach Zjednoczonych i / lub innych krajach.
Chronione przez Sectigo SSL