Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
828to832
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
828to832
828to832
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Makro für Zellenfarbe

Makro für Zellenfarbe
22.12.2006 23:12:54
Dirk
Hallo Ihr fleißigen Helfer,
habe mal wieder ein Problem, hoffe ihr seid noch nicht im Weihnachts"wahn"
möchte meine Tabelle farblich gestalten, klappt nur eingeschränkt.
Habe es bisher so gemacht, dass Spalte A und die ersten 2 Zeilen grau hinterlegt sind (Überschriften), ab da gehören eigentlich immer 2 Spalten zusammen (farblich gesehen)
mit meinem Makro frage ich die 3. Zeile der beiden Spalten auf gleiche Farbe ab,
bei Gleichheit werden beide Spalten minus der Überschriftzeilen in der entsprechenden Farbe gefärbt.
wird versucht eine andere Zelle zu färben, soll die eingestelle Farbe wiederhergestellt werden.
bei Ungleichheit soll keine Farbe (weil halt nicht eindeutig)und eine Fehlermeldung kommen.
Dies passiert auch, aber halt auch wenn ich die Daten eingebe und bestätige.
Ist ganz schön schwierig zu erklären, hoffe man versteht was ich meine
https://www.herber.de/bbs/user/39171.xls
Meine Frage lautet eigentlich, wie kann, bzw. muß ich mein Makro umbauen, dass ich nur gleiche Farben habe kann, und nur eine Fehlermeldung kommt, und oder ich(bzw. jeder andere Nutzer) irgendeine Zelle ändert und damit beide Spalten automatisch ändert.
Dann möchte ich noch fragen, ob es möglich ist, nur bestimmte (blasse) Farben zuzulassen,bzw. auszusuchen, da die kräftigen Farben für andere Zwecke gebraucht werden
Dann hab ich noch eine Frage zu vba, es gibt doch das Direktfenster, Lokalfenster und Überwachungsfenster, wie nutzt man diese sinnvoll?
Herzlichen Dank für Eure Bemühungen, und schon mal frohes Fest
Dirk

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Makro für Zellenfarbe
23.12.2006 02:51:27
fcs
Hallo Dirk,
hier mein Änderungsvorschlag für dein Makro inkl. Farbauswahl-Beschränkung
Die Farbbeschränkung bezieht sich auf die Farben mit der Excel-Standardeinstellung für die Farbpalette.
Gruss
Franz

Private LastZelle As Range
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If LastZelle Is Nothing Then
Set LastZelle = Target
Else
If LastZelle.Row > 2 And LastZelle.Column > 1 Then
Select Case LastZelle.Column
Case 2, 3
If LastZelle.Address = "$B$3" Then
Call Farbpruefung("B3", "B3:C65536")
End If
If LastZelle.Interior.ColorIndex <> Range("B3").Interior.ColorIndex Then
Call Faerben("B3", "B3:C65536")
End If
Case 4, 5
If LastZelle.Address = "$D$3" Then
Call Farbpruefung("d3", "d3:E65536")
End If
If LastZelle.Interior.ColorIndex <> Range("D3").Interior.ColorIndex Then
Call Faerben("D3", "D3:E65536")
End If
Case Is > 5
If LastZelle.Address = "$F$3" Then
Call Farbpruefung("f3", "f3:ag65536")
End If
If LastZelle.Interior.ColorIndex <> Range("F3").Interior.ColorIndex Then
Call Faerben("F3", "F3:AG65536")
End If
Case Else
'do nothing
End Select
End If
Set LastZelle = Target
End If
End Sub
Private Sub Faerben(Zelle As String, Bereich As String)
MsgBox "Spalte ""von"" und ""bis"" müssen die gleiche Farbe haben" & vbLf & vbLf & _
"Es gilt die Farbe von Zelle " & Zelle & "!!"
Range(Bereich).Interior.ColorIndex = Range(Zelle).Interior.ColorIndex
End Sub
Private Sub Farbpruefung(Zelle As String, Bereich As String)
pruefung as Boolean
Select Case LastZelle.Interior.ColorIndex
Case 0, 33 To 45 'zulässige Farben
pruefung = True
Case Else
MsgBox "Zulässig sind nur die Füllfarben " & vbLf _
& "0   weiß" & vbLf _
& "33  himmelblau" & vbLf _
& "34  pastellgrün" & vbLf _
& "35  helles türkis" & vbLf _
& "36  hellgelb" & vbLf _
& "37  blaßblau" & vbLf _
& "38  hellrose" & vbLf _
& "39  Lavendel" & vbLf _
& "40  gelbbraun" & vbLf _
& "41  hellblau" & vbLf _
& "42  aquablau" & vbLf _
& "43  gelbgrün" & vbLf _
& "44  gold" & vbLf _
& "45  helles orange" & vbLf
pruefung = False
End Select
If pruefung = True Then
Range(Bereich).Interior.ColorIndex = Range(Zelle).Interior.ColorIndex
Else
Range(Bereich).Interior.ColorIndex = Range(Zelle).Offset(200, 0).Interior.ColorIndex
End If
End Sub

Anzeige
AW: Makro für Zellenfarbe - Korrktur
23.12.2006 03:00:24
fcs
Hallo Dirk,
kleine Korrektur, der Colorindex für Farbe Weiß ist 2 bitte folgende Zeilen anpassen:

Private Sub Farbpruefung(Zelle As String, Bereich As String)
pruefung as Boolean
Select Case LastZelle.Interior.ColorIndex
Case 2, 33 To 45 'zulässige Farben
pruefung = True
Case Else
MsgBox "Zulässig sind nur die Füllfarben " & vbLf _
& "2   weiß" & vbLf _
& "33  himmelblau" & vbLf _

Gruss
Franz
AW: Makro für Zellenfarbe - Korrktur
23.12.2006 14:18:55
Dirk
Hallo Franz,
das ist ja wie Weihnachten, wow herzlichen Dank, werde es gleich ausprobieren
Vielen Dank und ein schönes Weihnachtsfest wünsch ich
Dirk
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige