online 1
gast (50)

/ Forum / Tabellenkalkulation

TabellenkalkulationTabellenkalkulation

Fragevon rheym vom 15.04.2020, 09:10 Options

Lösung

clickbox

hallo,

kann man in excel durch Anklicken einer Zelle dort einen vorgegebenen Wert generieren?
z.B.einmal klicken=1
zweimal klicken =2
wenn das geht, das wäre ziemlich toll!

viele Grüße

Richard


Antwort schreiben

Antwort 1 von Hajo_Zi vom 15.04.2020, 09:16 Options

Hallo Richard,

folgenden Code unter der Tabelle.
Option Explicit

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Target.Address = "$A$1" Then
Target = 2
Cancel = True
End If
End Sub

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

Gruß hajo

Antwort 2 von Saarbauer vom 15.04.2020, 09:18 Options

Hallo,

als einfachste Lösung

Zellinhalt = Zelinhalt +1

Dadurch wird bei jedem Klick der Inhalt um 1 erhöht.

Solltest du etwas anderes voehaben, dann wäre eine genauere Erläuterung deines Problems sinnvoll

Helmut

Antwort 3 von rheym vom 15.04.2020, 14:32 Options

Hallo Helmut, hallo Hajo,

vielen Dank für Eure Antworten, hört sich beides vielversprechend an, bei hajo weiss ich nicht genau, wie ich den code mit der Zelle in Verbindung bringen soll.
Bei Helmut weiss ich auch nicht, was ich in die Zelle schreiben soll. Wenn ich den Zellinhalt +1 eingebe entsteht ein Zirkelbezug
Noch einmal zur genaueren Erläuterung. Der Zellwert kann 0,1 oder 2 sein. Die Zelle ist auf den Wert 1 voreingestellt. Wenn ich die Zelle anklicke soll sich der Wert auf 2 verändern und wenn ich die Zelle noch einmal anklicke soll sich der Zellwert 0 sein und wenn ich die Zelle noch einmal anklicke, soll, der Zellwert wieder 1 sein und so weiter.

vielen Dank für Eure bisherige Hilfe

Richard

Antwort 4 von Saarbauer vom 15.04.2020, 14:41 Options

Hallo,

was du vorhast geht nur mit einem Makro und das hat @Hajo_Zi dir schon vorgegeben. Musst du nur einbinden in deine Tabelle

Gruß

Helmut

Antwort 5 von Hajo_Zi vom 15.04.2020, 14:43 Options

Hallo Richard,

Du mußt meine Zellbezeichnung $A$1 nur durch Deine ersetzen, achte auf das $ Zeichen. Das war natürlich für die erste Aufgabenstellung gemeint. Für die jetzige geht es nicht mehr.

Gruß Hajo

Antwort 6 von rheym vom 15.04.2020, 14:48 Options

Hallo Helmut,

leider weiss ich nicht, wie man ein Makro in eine Tabelle einbindet, wenn Du es mir erklären willst und das in diesem Rahmen möglich ist, würde ich mich freuen, ansonsten muss ich mir wohl ein Buch kaufen, hast Du einen Tipp wo man sowas gut lernen kann?

Gruß

Richard

Antwort 7 von Hajo_Zi vom 15.04.2020, 14:59 Options

Hallo Richard,

in VBA unter der Tabelle.
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Address = "$A$1" Then
Target = 1 + Target
If Target > 2 Then Target = 0
End If
End Sub

Die Zelle muss aber gewechselt werden. Besser Du machts es mit dem Doppelklick Ereignis.

Gruß Hajo

Antwort 8 von rheym vom 15.04.2020, 15:22 Options

Hallo Hajo,
so?
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range)
If Target.Address = "$A$1" Then
Target = 1 + Target
If Target > 2 Then Target = 0
End If
End Sub
Leider kenne ich mich mit VBA noch nicht aus. Ich öffne denVBA editor, klicke links bei VBA-Projekt meiner Mappe und dann weiss ich nicht mehr weiter....

Gruß Richard

Antwort 9 von Hajo_Zi vom 15.04.2020, 15:38 Options

Hallo Richard,

klick erst links Doppelt auf Deine Tabelle und dann Code ins rechte Fenster kopieren oder
rechte Maustaste im Register auf die Tabelle und Code anzeigen.

Gruß Hajo

Antwort 10 von rheym vom 15.04.2020, 16:17 Options

Hallo Hajo,

hey es hat funktioniert! Vielen Dank!!!!!!

Gruß
Richard

Antwort 11 von rheym vom 15.04.2020, 16:32 Options

Hallo Hajo,
jetzt kommen natürlich gleich die nächsten Fragen:
geht das auch mit einfachem Klick?
Kann ich die Anzahl der Zellen vergrößern oder braucht jede Zelle sein eigenes Makro?

Gruß

Richard

Antwort 12 von Hajo_Zi vom 15.04.2020, 16:47 OptionsLösung

Lösung
Hallo Richard,

mit Klick nur falls Du zwischendurch eine andere zelle wählst, darum hatte ich Doppelklick vorgeschlagen. Da ist es dann mit mehreren Zellen auch einfacher.
If Target.Address = "$A$1" Or Target.Address = "$A$2" Then


bei Doppelklick
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Intersect(Target, Me.Range("A2:A500")) Is Nothing Then Exit Sub
Target = 1 + Target
If Target > 2 Then Target = 0
End Sub

Gruß Hajo

Antwort 13 von rheym vom 15.04.2020, 17:39 Options

Hallo Hajo,

vielen Dank noch einmal für Deine Hilfe! Du hast mir echt geholfen

viele Grüße

Richard

Hinweis

Diese Frage ist schon etwas älter, Sie können daher nicht mehr auf sie antworten. Sollte Ihre Frage noch nicht gelöst sein, stellen Sie einfach eine neue Frage im Forum..

Neue Einträge

Version: supportware 1.9.150 / 10.06.2022, Startzeit:Mon Jan 26 01:23:17 2026