Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
572to576
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
572to576
572to576
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

RGB-Beispiel von Josef Ehrensberger

RGB-Beispiel von Josef Ehrensberger
24.02.2005 10:01:31
Josef
Hallo Excel und VB Könner!
Würde gerne das RGB-Beispiel von Josef Ehrensberger:
https://www.herber.de/bbs/user/18470.xls
oder:

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("A2:C2")) Is Nothing Then
If Not IsNumeric([A2]) Or [A2] < 0 Then [A2] = 0
If Not IsNumeric([B2]) Or [B2] < 0 Then [B2] = 0
If Not IsNumeric([C2]) Or [C2] < 0 Then [C2] = 0
Me.Shapes("Rechteck 1").Fill.ForeColor.RGB = RGB([A2], [B2], [C2])
End If
End Sub

in ein Makro-Modul einbinden (also rgb_anzeigen() ....) und dieses mit einem Button starten. Da ich VB Neuling bin, gelingt es mir nicht die forhandene "Tabellenform" in "Modulform" umzuschreiben.
Wer kann mir da helfen?
Grüße,
Hans

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

Betreff
Datum
Anwender
Anzeige
AW: RGB-Beispiel von Josef Ehrensberger
24.02.2005 10:13:15
Josef
Hallo Hans!
Den Tabellennamen und die Adressen der Zellen mit den Werten musst du anpassen!

Sub rgb_anzeigen()
With Sheets("Tabelle1") 'Tabellennamen und Zelladressen anpassen!
If Not IsNumeric(.[A2]) Or .[A2] < 0 Then .[A2] = 0
If Not IsNumeric(.[B2]) Or .[B2] < 0 Then .[B2] = 0
If Not IsNumeric(.[C2]) Or .[C2] < 0 Then .[C2] = 0
.Shapes("Rechteck 1").Fill.ForeColor.RGB = RGB(.[A2], .[B2], .[C2])
End With
End Sub

Gruß Sepp
P.S.: Rückmeldung nicht vergessen!
AW: RGB-Beispiel von Josef Ehrensberger
24.02.2005 10:56:22
Josef
Vielen Dank Sepp!
Funktioniert wunderbar. Da ich meine RGB-Werte aber aus dem CIE-Norm-Gamut bekomme, kommt es vor das es negative Werte gibt, da außerhalb des RGB-Dreieckes. Ist Ok, wird ja dann Null gesetzt. Diese Null schreibt mir das Makro aber auch in die Zelle und überschreibt mir somit meine Formel. Wie kann ich das noch verhindern?
Besten Dank schon mal!
Hans
Anzeige
AW: RGB-Beispiel von Josef Ehrensberger
24.02.2005 11:06:54
Josef
Hallo Hans!
Dann z.B. so!

Sub rgb_anzeigen()
Dim r As Integer, g As Integer, b As Integer
With Sheets("Tabelle1") 'Tabellennamen und Zelladressen anpassen!
If Not IsNumeric(.[A2]) Or .[A2] < 0 Then r = 0 Else r = .[A2]
If Not IsNumeric(.[B2]) Or .[B2] < 0 Then g = 0 Else g = .[B2]
If Not IsNumeric(.[C2]) Or .[C2] < 0 Then b = 0 Else b = .[C2]
.Shapes("Rechteck 1").Fill.ForeColor.RGB = RGB(r, g, b)
End With
End Sub

Gruß Sepp
P.S.: Rückmeldung nicht vergessen!
AW: RGB-Beispiel von Josef Ehrensberger
24.02.2005 11:52:34
Josef
Vielen Dank hat geklappt!!!
AW: RGB-Beispiel von Josef Ehrensberger
Josef

Sub rgb_Farbe()
If Not IsNumeric([A2]) Or [A2] < 0 Then [A2] = 0
If Not IsNumeric([B2]) Or [B2] < 0 Then [B2] = 0
If Not IsNumeric([C2]) Or [C2] < 0 Then [C2] = 0
ActiveSheet.Shapes("Rechteck 1").Fill.ForeColor.rgb = rgb([A2], [B2], [C2])
End Sub

Bert
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige