Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1872to1876
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Zelle farblich markierungen

Zelle farblich markierungen
23.02.2022 16:19:33
anonymer
Hallo zusammen,
ein Code bringt dazu, bei doppelklick eine Zelle blau zu markieren.
Jett bräuchte ich einen Code, was dazu führt, wenn eine Zeile schon blau markiert ist, ist es nicht möglich eine andere Zelle in dieser Zeile zu markieren.
Zb. A1 ist blau markiert, dann ist es nicht mehr möglich K1 durch doppelklick auch blau zu markieren.
Mein Code für die blau Markierung durch doppelklick :

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Cancel = True
If Target.Interior.ColorIndex = xlNone Then
Target.Interior.Color = 16763904
ElseIf Target.Interior.Color = 16763904 Then
Target.Interior.ColorIndex = 0
End If
End Sub

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

Betreff
Datum
Anwender
Anzeige
AW: Zelle farblich markierungen
23.02.2022 16:37:08
ChrisL
Hi
80/20-Lösung. Ansonsten bitte die Frage wieder als offen markieren.
Wenn die Variable zurückgesetzt wird (schliessen der Datei oder Debugg-End), geht die Prüfung in die Hose.

Public b As Boolean
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Cancel = True
If Target.Interior.ColorIndex = xlNone And Not b Then
Target.Interior.Color = 16763904
b = True
ElseIf Target.Interior.Color = 16763904 Then
Target.Interior.ColorIndex = 0
b = False
End If
End Sub
cu
Chris
Unverständlich...
23.02.2022 19:40:44
{Boris}
Hi,
Dein bisheriger Code macht doch genau das was er soll:
Bei Doppelklick wird die Zelle - egal welche - blau gefärbt oder wieder entfärbt.
Das hier

Zb. A1 ist blau markiert, dann ist es nicht mehr möglich K1 durch doppelklick auch blau zu markieren.
kann ich somit nicht nachvollziehen.
BTW: Dein ElseIf ist überflüssig:

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Cancel = True
If Target.Interior.ColorIndex = xlNone Then
Target.Interior.Color = 16763904
Else
Target.Interior.ColorIndex = 0
End If
End Sub
VG, Boris
Anzeige
Jetzt habe ich es erst kapiert...
23.02.2022 19:53:01
{Boris}
Hi,
..Du möchtest pro Zeile maximal 1 Zelle blau markieren können.
Basierend auf dem Vorschlag von Chris: Definiere dazu eine Public-Variable in einem allgemeinen Modul:

Public b(10) As Long
In das Codemodul des Blattes:

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
With Target
If .Row 
Wirkt jetzt bis Zeile 10. Für mehr Zeilen musst Du sowohl If .Row anpassen sowie die Public-Variable entsprechend erweitern.
VG, Boris
Vergiss den Vorschlag - war Murks...oT
23.02.2022 19:58:29
{Boris}
VG, Boris
Anzeige
AW: Zelle farblich markierungen
23.02.2022 22:00:51
Daniel
Hi
da musst du mit einer Schleife über die Zellen der Zeile gehen und prüfen, ob schon eine Zelle entsprechen gefärbt ist:

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
dim Zelle as range
Cancel = True
If Target.Interior.ColorIndex = xlNone Then
For each Zelle in Intersect(Target.EntireRow, Range("A:Z")) 'hier die Spalten angeben, für die das gelten soll
if Zelle.Interior.Color = 16763904 then Exit for
Next
if Zelle is nothing then Target.Interior.Color = 16763904
ElseIf Target.Interior.Color = 16763904 Then
Target.Interior.ColorIndex = 0
End If
End Sub
Gruß Daniel
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige