Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Beim Klicken Zellinhalt ändern

Forumthread: Beim Klicken Zellinhalt ändern

Beim Klicken Zellinhalt ändern
12.05.2018 20:54:25
Eilean
Hallo zusammen!
Dies ist wohl eine ziemlich banale Frage, aber ich habe es jetzt wirklich lange versucht selbst zu lösen und komme nicht auf einen grünen Zweig...
Ich möchte, dass eine beliebige Zelle genau zwei Werte annehmen kann (a/b) und beim Klicken auf diese Zelle deren Inhalt direkt auf den anderen Wert geändert wird - im Prinzip analog zu einer Checkbox.
Ich habe diese zwei Subs gebastelt, die, jeweils einzeln getestet, auch funktionieren, aber halt immer nur die passende.
Sub klick()
If ActiveCell.Value = "a" Then ActiveCell.Value = "b"
End Sub

Sub klick2()
If ActiveCell.Value = "b" Then ActiveCell = "a"
End Sub

Leider habe ich es mit dem Verschachteln der Ifs nicht hingekriegt (- ja, ich bin eine blutige Anfängerin). Ausserdem soll das Makro ja direkt beim Klicken auf die Zelle laufen.
Also irgendwie so, aber das klappt halt nicht:
Sub wunschmakro()
If Target.Column >= 7 And Target.Column = 7 And Target.Row 

Kann jemand helfen? Vielen Dank schon mal!
Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Beim Doppelklick Zellinhalt ändern
12.05.2018 21:07:01
Gerd
Moin Eilean!
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Not Intersect(Target, Range("G7:I38")) Is Nothing Then
Cancel = True
If ActiveCell.Value = "a" Then
ActiveCell.Value = "b"
Else
ActiveCell.Value = "a"
End If
End If
End Sub

Gruß Gerd
Anzeige
AW: Beim Doppelklick Zellinhalt ändern
12.05.2018 21:50:15
Eilean
Wow, das ging ja schnell! :D Danke Gerd!
Hab den Code in mein Modul eingefügt. Sollte das jetzt automatisch laufen, oder muss ich noch was aktivieren? Wenn ich jetzt nämlich in die entsprechenden Zellen klicke, passiert leider nichts.
AW: Beim Klick Zellinhalt ändern
12.05.2018 21:53:48
Eilean
P.S. Auch nicht wenn ich doppelklicke. Aber das sollte ja nicht nötig sein.
Anzeige
AW: Beim Klick Zellinhalt ändern
12.05.2018 22:01:23
niclaus
Hallo Eilean
Du darfst den Code nicht in ein Modul einfügen. Du musst ihn unter Microsoft Excel Objekte in die entsprechende Tabelle einfügen!
Und: Doppelklick ist notwendig? Der Code heisst ja Worksheet_BeforeDoubleClick
Grüsse Niclaus
AW: Beim Klicken Zellinhalt ändern
12.05.2018 22:43:01
Sepp
Hallo Eilean,
es gibt kein Klick-Ereignis in Excel! Anbei ein Beispiel mit einem unsichtbaren Steuerelement.
https://www.herber.de/bbs/user/121571.xlsm
 ABCDEF
1Gruß Sepp
2
3

Anzeige
;
Anzeige

Infobox / Tutorial

Zellinhalt beim Klicken ändern in Excel


Schritt-für-Schritt-Anleitung

Um den Zellinhalt in Excel beim Klicken zu ändern, kannst Du den folgenden VBA-Code verwenden. Dieser muss im entsprechenden Arbeitsblatt-Objekt und nicht in einem Modul eingefügt werden:

  1. Öffne Excel und drücke Alt + F11, um den VBA-Editor zu öffnen.
  2. Suche im Projekt-Explorer das Arbeitsblatt, in dem Du die Funktion implementieren möchtest.
  3. Doppelklicke auf das Arbeitsblatt (z.B. "Tabelle1").
  4. Füge den folgenden Code ein:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    If Not Intersect(Target, Range("G7:I38")) Is Nothing Then
        Cancel = True
        If Target.Value = "a" Then
            Target.Value = "b"
        Else
            Target.Value = "a"
        End If
    End If
End Sub
  1. Schließe den VBA-Editor und teste die Funktion, indem Du doppelt auf eine Zelle im Bereich G7:I38 klickst.

Häufige Fehler und Lösungen

  • Code nicht funktioniert: Stelle sicher, dass der Code im richtigen Arbeitsblatt-Objekt eingefügt wurde und nicht in einem Modul.
  • Doppelklick funktioniert nicht: Der Code wurde speziell für das Doppelklick-Ereignis geschrieben. Wenn Du nur klicken möchtest, gibt es keine native Unterstützung für Klick-Ereignisse in Excel.
  • Zellen sind nicht im angegebenen Bereich: Überprüfe, ob Du die Zellen in den Bereich G7:I38 klickst, wie im Code angegeben.

Alternative Methoden

Wenn Du den Zellinhalt nicht nur durch Doppelklick ändern möchtest, kannst Du auch ein unsichtbares Steuerelement verwenden. So kannst Du ein Steuerelement einfügen, das einen Klick registriert und den Wert ändert. Hier ist eine kurze Anleitung:

  1. Gehe zu Entwicklertools > Einfügen.
  2. Wähle ein Formularsteuerelement aus und ziehe es auf das Arbeitsblatt.
  3. Klicke mit der rechten Maustaste auf das Steuerelement und wähle Makro zuweisen.
  4. Wähle oder erstelle ein Makro, das den Zellinhalt ändert.

Praktische Beispiele

Hier ist ein einfaches Beispiel für die Verwendung des Codes:

  • Stelle sicher, dass Du in den Zellen G7 bis I38 die Werte "a" oder "b" eingibst.
  • Doppelklicke auf eine dieser Zellen, um den Wert zu wechseln.

Wenn Du ein Steuerelement verwendest, kannst Du den Wert einer beliebigen Zelle ändern, indem Du das Steuerelement klickst.


Tipps für Profis

  • Verwendung von Variablen: Du kannst den Code weiter optimieren, indem Du Variablen verwendest, um den Code lesbarer zu gestalten.
  • Fehlerbehandlung einfügen: Implementiere eine Fehlerbehandlung, um sicherzustellen, dass der Code auch bei unerwarteten Eingaben nicht abstürzt.
  • Anpassung des Bereichs: Ändere den Bereich im Code, um andere Zellen einzuschließen, in denen der Zellinhalt geändert werden soll.

FAQ: Häufige Fragen

1. Kann ich den Wert auch mit einem einfachen Klick ändern?
Nein, Excel unterstützt kein Klick-Ereignis. Du musst einen Doppelklick verwenden oder ein Steuerelement einsetzen.

2. Muss ich den VBA-Code jedes Mal neu eingeben?
Nein, einmal eingefügt bleibt der Code in der Arbeitsmappe gespeichert, solange Du die Datei nicht änderst oder den Code manuell löschst.

3. Gibt es eine Möglichkeit, den Zellinhalt mit einer Tastenkombination zu ändern?
Ja, Du kannst eine Tastenkombination erstellen, die ein Makro ausführt, um den Zellinhalt zu ändern. Dies erfordert jedoch zusätzliche Programmierung in VBA.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige