In Excel 2013 Eine Zelle durchs Anklicken einer anderen Bearbeiten?

... komplette Frage anzeigen

4 Antworten

Ohne Makros kannst du nur mit Zellen nicht auf Markierungs-Ereignisse u. ä. reagieren.

Das ginge mit "Steuerelementen".

(Um die einzufügen, brauchst du die "Entwicklertools" - siehe https://support.office.com/de-de/article/Anzeigen-der-Registerkarte-Entwicklertools-e1192344-5e56-4d45-931b-e5fd9bea2d45)

Unter "Entwicklertools" klickst du auf "Einfügen" und dann unter "Formularsteuerelemente" oder "Active-X-Steuerelemente" auf "Kontrollkästchen" (ist bei mir - Office 2010 - jeweils das 3. von links, obere Zeile). Der Mauszeiger ändert sich in ein Fadenkreuz; damit kannst du auf die Tabelle ein Rechteck "malen", wo das Steuerelement erscheint.

(Ich bevorzuge Active-X-Controls, weil die sich leichter einstellen lassen, man braucht nur den Entwurfsmodus einzuschalten und sich die Eigenschaften von dem Ding anzeigen zu lassen, dann hat man alle einstellbaren Eigenschaften auf einen Blick. Bei den Formular-Steuerelementen muss man mit Rechtsklicks sein Glück versuchen.)

Beispiel:

Du legst über die Zellen A1 bis A6 bzw. A1 bis F1 jeweils ein Kontrollkästchen und gibst ihnen die entsprechenden Eigenschaften - insbesondere "Caption" ("Titel"): "Montag" bis "Freitag" und "LinkedCell" ("Verbundene Zelle") - hier bietet sich die darunterliegende Zelle an.

Bei Kontrollkästchen brauchst du auch keine Extra-Zelle mit einem "X" mehr, das hat das Kontrollkästchen schon. (Das Kästchen verschiebst du nach rechts über die "Alignment"-Eigenschaft.)

Ein gewisses Problem stellt noch das Kästchen "Alle" dar - wenn du das anklickbar haben willst, brauchst du ein Makro. Sonst stell seine "Enabled"-Eigenschaft auf "False" und trag in die verbundene Zelle die Formel

=UND(A1:A5)

bzw.

=UND(A1:E1)

ein. (Nachteil: das Feld erscheint grau. - Leider habe ich bei Excel keine Möglichkeit gefunden, einen "Container" für Steuerelemente einzubauen, sodass man "Enabled" und "ausgegraut" unabhängig voneinander einstellen kann. - Mit Enabled=True überschreibt das Steuerelement bei Klick die Formel der verbundenen Zelle.)

Antwort bewerten Vielen Dank für Deine Bewertung

 Mit Bezugseinschränkung auf einen Zellbereich folgendes µ:

Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not intersect(Target, Range("A1:A11") _
is nothing then Target.offset(0, 1).Value = "X"
End Sub '.value ist Vorgabeargument u.könnte entfallen
Beachte:
das µ gehört ins Modulblatts des Worksheets
und bezieht sich auch nur auf dieses (reicht normalerweise, (Du kommst da rein, wenn Du auf den Blattnamen rechtsklickst, dann Code anzeigen wählst).
Das Leer_ist lediglich eine Umbruchanweisung im VBA-Code, die hier nur aus Darstellungsgründen eingefügt wurde kannst Du im Modul löschen [entf]
Du musst aber wissen, dass das bei einfachem Auswählen der Zelle anspricht. Soll es -was meist sinnfoller wäre- nur auf eine Eingabe ansprechen, musst Du den Worttei Selection im Namen streichen

Antwort bewerten Vielen Dank für Deine Bewertung

ich sehe, dass Iamiam schon die Makrovariante beschrieben hat. Einen Hinweis kann ich aber nicht untern Tisch fallen lassen - per Klicken Tabelleninhalte zu setzen läuft der Excellogik total entgegen. Man kann über Datengültigkeit bspw. auch sicherstellen, dass nur bestimmter Inhalt in ein Feld kommt bzw. dort eine Art Dropdown erstellen.

Excel ist sehr flexibel und lässt sich in diverser Weise ge- und missbrauchen - in letzterem Fall wird es halt irgendwann unübersichtlich und fehleranfällig. In Deinem Fall dudelt dann ein Makro im Hintergrund, das bei jeder Änderungen im Tabellenblatt anspringt. Wenn Du die Tabelle verschiebst ohne das Makro anzupassen, kommt ein komisches Ergebnis raus. Daher nur mein Hinweis ggf. zu hinterfragen, ob der Weg, der einem vorschwebt, alternativlos ist.

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von Iamiam
03.07.2016, 01:04

dem kann ich nur zustimmen. Die Bindung an das Worksheet-Selectionchange-Ereignis -selbst mit Bereichseinschränkung-
kann  ich guten Gewissens allenfalls für Neuberechnung, Zufallszahlen oder umlaufende Bereichsauswahlen empfehlen (...der nächste bitte...), nur in Spezialfällen was anderes! (weshalb ich auch auf das Worksheet_Change-Ereignis hingewiesen hab)

0

Ohne Makros wirst du das nicht hinkriegen. Excel selber hat keine Funktionshandler

Antwort bewerten Vielen Dank für Deine Bewertung

Was möchtest Du wissen?