Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1036to1040
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
Farbe der Nachbarzelle
08.01.2009 12:50:17
Volker
Hallo zusammen,
zuerst einmal wünsche ich Euch ein gutes 2009!
Nun zu meinem Problem:
Ich übergebe mittels untenstehendem Code die Daten an eine Tabelle. Funktioniert auch. Allerdings hätte ich jetzt gerne das bei nachträglich geleerter Zelle die Ursprungsfarbe wieder erscheint.
Wenn ich den Code so laufen lasse, habe ich nach Abschluß ein weißes Feld.
Frage: Wie kann ich mir die Farbe der Nachbarzelle in die zuvor gelöschte Zelle holen?
Nachbarzelle deswegen, weil die Tabelle der Übersichtlichkeit halber Zeilenweise mit zwei Farben
formatiert ist.
Hier der Code

Private Sub Worksheet_Change(ByVal Target As Range)
Dim zelle As Range
For Each zelle In Range(Target.Address)
With zelle
Select Case .Value
Case "100"
.Interior.ColorIndex = 3
Case "200"
.Interior.ColorIndex = 4
Case "300"
.Interior.ColorIndex = 41
Case "400"
.Interior.ColorIndex = 1
Case ""
.Interior.ColorIndex = ?   Hier stand mal xlnone
End Select
End With
Next zelle
End Sub


Danke und Gruß
Volker

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Farbe der Nachbarzelle
08.01.2009 12:56:32
D.Saster
Hallo,
=.offset(0,1).interior.Colorindex
Gruß
Dierk
Wenn die zeilenweise Färbung...
08.01.2009 12:57:00
RS
mit einer bedingten Formatierung erstellt ist (,was sinnvoll wäre!), dann würde xlnone es tun.
Wenn das nicht der Fall ist:

.Interior.ColorIndex = .offset(0,1).Interior.ColorIndex


Grüsse RS

AW: Wenn die zeilenweise Färbung...
08.01.2009 13:16:03
Volker
Hallo, danke für die Antwort.
Ich habe die Zeile mit den Fragezeichen durch die von Euch gesendete ersetzt.

Private Sub Worksheet_Change(ByVal Target As Range)
Dim zelle As Range
For Each zelle In Range(Target.Address)
With zelle
Select Case .Value
Case "Tagesdienst"
.Interior.ColorIndex = 3
Case "grün"
.Interior.ColorIndex = 4
Case "blau"
.Interior.ColorIndex = 41
Case "schwarz"
.Interior.ColorIndex = 1
Case " "
.Interior.ColorIndex = .offset(0,1).Interior.ColorIndex
End Select
End With
Next zelle
End Sub


Scheint aber nicht zu funktionieren. Sagt mir jemand wo ich den Fehler mache?
Danke und Gruß
Volker

Anzeige
AW: Wenn die zeilenweise Färbung...
08.01.2009 13:22:00
D.Saster
Hallo,
steht denn auch ein Leerzeichen in der Zelle?
Gruß
Dierk
AW: Wenn die zeilenweise Färbung...
08.01.2009 13:16:00
Volker
Hallo, danke für die Antwort.
Ich habe die Zeile mit den Fragezeichen durch die von Euch gesendete ersetzt.

Private Sub Worksheet_Change(ByVal Target As Range)
Dim zelle As Range
For Each zelle In Range(Target.Address)
With zelle
Select Case .Value
Case "Tagesdienst"
.Interior.ColorIndex = 3
Case "grün"
.Interior.ColorIndex = 4
Case "blau"
.Interior.ColorIndex = 41
Case "schwarz"
.Interior.ColorIndex = 1
Case " "
.Interior.ColorIndex = .offset(0,1).Interior.ColorIndex
End Select
End With
Next zelle
End Sub


Scheint aber nicht zu funktionieren. Sagt mir jemand wo ich den Fehler mache?
Danke und Gruß
Volker

Anzeige
" " ist nicht gleich leere Zelle ! ...
08.01.2009 13:21:56
RS
also:

Case " ", ""
.Interior.ColorIndex = .Offset(0, 1).Interior.ColorIndex
End Select
...


oder besser:


Case Else
.Interior.ColorIndex = .Offset(0, 1).Interior.ColorIndex
End Select
...


Grüsse RS

AW: " " ist nicht gleich leere Zelle ! ...
08.01.2009 13:24:42
Volker
Hallo,
jetzt geht es !!
Danke und Gruß
Volker

306 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige