Live-Forum - Die aktuellen Beiträge
Datum
Titel
16.10.2025 17:40:39
16.10.2025 17:25:38
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Bedingung für VBA-Code einfügen

Bedingung für VBA-Code einfügen
04.08.2014 13:27:37
BEN10
Hallo Leute,
mit folgendem VBA-Code setze ich per Doppelklick in meiner Tabelle in Spalte D ein "X".

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Intersect(Target, Range("D2:D2000")) Is Nothing Then Exit Sub
Target = IIf(Target = "x", "", "x")
Cancel = True
End Sub

Meine Frage:
Kann man das Makro so umschreiben, dass es in Spalte D nur in Zellen Funktioniert die z.B. BLAU eingefärbt sind?
Wie müsste das Makro dann aussehen?
Gruß Ben

Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Bedingung für VBA-Code einfügen
04.08.2014 13:31:25
Oberschlumpf
Hi Ben
Füg zwischen Intersect-Zeile + Target = Zeile diese Zeile ein:
If Target.Interior.ColorIndex  5 Then Exit Sub
Das funktioniert aber nur, wenn Zelle tatsächlich mit Standardblau eingefärbt ist.
Wenn blau, weil bedingte Formatierung, dann muss anders programmiert werden.
Zeig am besten mal ne Bsp-Datei.
Ciao
Thorsten

Anzeige
AW: Bedingung für VBA-Code einfügen
04.08.2014 13:33:17
Rudi
Hallo,
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Not Intersect(Target, Range("D2:D2000")) Is Nothing Then
If Target.Interior.Color = RGB(0, 0, 255) Then
Target = IIf(Target = "x", "", "x")
Cancel = True
End If
End If
End Sub

Gruß
Rudi

Anzeige
AW: Bedingung für VBA-Code einfügen
04.08.2014 13:49:58
BEN10
Hi Rudi,
ich hab mich an für deine Variante entschieden, da mir die Auswahl mit der RGB-Farbpalette am besten gefallen hat.
Danke!
@die anderen Lösungsvorschläge: Hab eure Lösungen auch ausprobiert und sie haben auch funktioniert, aber wie oben erwähnt hab ich mich für Rudis Variante entschieden. Danke trotzdem!
Gruß BEN

Anzeige
AW: Bedingung für VBA-Code einfügen
04.08.2014 13:33:33
Robert
Hallo Ben,
Hintergrundfarbe kannst du so abfragen
If Cells(1,1).Interior.ColorIndex = 1 Then
Mach dies und das
End If
Blau ist nicht gleich Blau!
Übersicht zum Colorindex hier:
http://dmcritchie.mvps.org/excel/colors.htm
viele Grüße
Robert

Anzeige
AW: Bedingung für VBA-Code einfügen
04.08.2014 13:34:45
Hajo_Zi
Hallo Ben,
Option Explicit
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Not Intersect(Target, Range("D2:D2000")) Is Nothing Then
If Target.Interior.Color = 12611584 Then
Target = IIf(Target = "x", "", "x")
Cancel = True
End If
End If
End Sub

Dir ist schon klar das Excel über 4 Mio. Farben hat und darunter viel Blauttöne.

Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

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