Free Trial

Safari Books Online is a digital library providing on-demand subscription access to thousands of learning resources.


Share this Page URL
Help

Anhang B: Die VBA-FAQ > B.19 Wie kann ich eine Zelle auf Doppelklick hochzählen... - Pg. 657

Wie kann ich eine Zelle auf Doppelklick hochzählen? B.19 Wie kann ich eine Zelle auf Doppelklick hochzählen? Bei der folgenden Lösung wird die Zelle A1 immer dann um den Wert 1 erhöht, wenn Sie einen Doppelklick auf diese Zelle durchführen. Wenn Sie beispielsweise in Zelle A1 das heutige Datum erfassen und danach einen Doppelklick auf diese Zelle durchführen, dann soll das Datum von morgen eingestellt werden. Für diese Aufgabe können Sie das Tabellenereignis Worksheet_BeforeDoubleClick verwenden. Dieses Ereignis reagiert auf jeden Doppelklick in der Tabelle. Sie haben dabei die Möglichkeit, die Reaktion des Doppelklicks nur auf bestimmte Zellen einzuschränken. 1. 2. 3. Klicken Sie mit der rechten Maustaste auf den Tabellenreiter der Tabelle, für die Sie diese Funktion unterbinden möchten. Wählen Sie aus dem Kontextmenü den Befehl C ODE ANZEIGEN . Erfassen Sie das folgende Ereignismakro: A B C Listing B.25: Per Doppelklick das nächste Datum einstellen Private Sub Worksheet_BeforeDoubleClick _ (ByVal Target As Excel.Range, Cancel As Boolean) If Target.Address = "$A$1" Then Target.Value = Target.Value + 1 Cancel = True End If End Sub Über die Eigenschaft Address können Sie überprüfen, ob der Doppelklick auf Zelle A1 stattgefunden hat. Wenn ja, dann erhöhen Sie den bisherigen Zellenwert um den Wert 1. Da Datumsangaben in Excel intern in Zahlen umgerechnet werden (1 = 1.1.1900, 2 = 2.1.1900 usw. bis heute), kann hier elegant jeweils das nächste Datum in die Zelle eingefügt werden. Indem Sie das Argument Cancel auf den Wert True setzen, unterbinden Sie die Standardreaktion von Excel bei einem Doppelklick in die direkte Zellenbearbei- tung. Sie können dieses Standardverhalten übrigens gut testen durch doppeltes Klicken in einer beliebige Zelle. Vergleichen Sie das Ergebnis dieser Aktion mit einem Doppelklick auf Zelle A1. B.20 Wie kann ich die jeweils aktive Zelle hervorheben? In einer Tabelle soll jeweils die aktive Zelle hervorgehoben werden. Dabei soll der Schriftschnitt kursiv und fett für die jeweils aktive Zelle dynamisch eingestellt wer- den. Beim Verlassen der Zelle wird der Zellenstandard wieder hergestellt. 657