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

Bestimmte Zeilen mit Makro farbig markieren

Bestimmte Zeilen mit Makro farbig markieren
19.10.2004 13:11:51
monika
Hallo Zusammen,
ich habe eine Steuerelement-Toollbox mit Makors hinterlegt.
In einer Tabelle mit verschiedenen Uhrzeiten möchte ich nun die Uhrzeiten unterschiedlich farbig markiern. (14-15:59 gelb, 16 - 17:59 grün, usw).
Es soll aber nicht nur die Zelle mit der Uhrzeit,(Spalte D) markiert werden, sondern die Zeile A - K.
Mit diesem VBA (Auszug nachfolgend) habe ich das zwar soweit stehen, kommen jedoch mehr Spalten mit Daten hinzu, klappt das nicht mehr, da ich B25:O45 angegeben habe.
Kann mir jemand helfen ?
Viele Grüsse, Monika
Cells.Find(What:="16:", After:=ActiveCell, LookIn:=xlFormulas, LookAt:= _
xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False) _
.Activate
Range("B25:O45").Select
Selection.Interior.ColorIndex = 35
ActiveWindow.SmallScroll Down:=-12
Selection.Borders(xlDiagonalDown).LineStyle = xlNone
Selection.Borders(xlDiagonalUp).LineStyle = xlNone
Selection.Borders(xlEdgeLeft).LineStyle = xlNone
With Selection.Borders(xlEdgeTop)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = 16
End With

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Bestimmte Zeilen mit Makro farbig markieren
Galenzo
Hallo,
mmein Vorschlag waäre so was:
Dim iRow%, arr
arr = Array(1, 2, 3, 4, 5, 6, 7, 8, 29, 16, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24)

For iRow = 2 To Cells(Rows.Count, "D").End(xlUp).Row
Range(Cells(iRow, "a"), Cells(iRow, "K")).Interior.ColorIndex = arr(Hour(Cells(iRow, "D")))
Next
Es wird hier die Spalte D von Zeile 2 (wg. evtl. Überschrift) bis zur letzten belegten Zelle durchlaufen und entsprechend dem gefundenen (Stunden-)wert ein Farbwert aus einer zuvor definierten (Farben-)liste gewählt. Damit wird dann der Bereich von A-K in der jeweiligen Zeile eingefärbt.
(Die Liste arr kannst du dann entsprechend anpassen)
Viel Erfolg!
Anzeige
AW: Bestimmte Zeilen mit Makro farbig markieren
19.10.2004 15:42:11
monika
Hallo,
das hat super funktioniert, danke.
Nun habe ich versucht, die Liste "arr" zu ändern,
jedoch ohne Erfolg.
Wie bekomme ich es nun noch hin, dass er mit nicht stündlich
fabrig markiert, sondern beispielsweise von 14:00 - 16:00 Uhr ?
Danke und viele Grüsse, Monika
AW: Bestimmte Zeilen mit Makro farbig markieren
Galenzo
indem du für beide Werte den gleichen Farbindex vergibst...
Um die Prozedur relativ einfach und anpaßbar zu gestalten, arbeite ich hier mit einem Feld ARR - das ist einfach nur eine Liste mit 24 (Farb-)werten.
Daraus wird dann der n-te Wert genommen, wobei n die gefundene Stunde ist.
Du solltest dann also einfach den 14. und 15. Wert der Liste auf einen gleichen Wert festlegen, wenn beide Zeiträume die gleiche Farbe haben sollen.
Viel Spaß!
Anzeige
AW: Bestimmte Zeilen mit Makro farbig markieren
Dan
Hallo Monika,
Gestern habe ich Deine Frage gelesen und die Frage fand ich interessant. Erst Heute habe ich aber Zeit ein Code dazu zu schreiben. Das Ergebniss findest Du hier :
https://www.herber.de/bbs/user/12363.xls
Der Code startet sich wenn man den Inhalt in einer (oder mehreren) Zelle(n) in der Spalte "D" aendert (Spalte kann man auch aendern). Also in z.B "D5" schreibt man "15:25" und der Code leuft von aleine (Sub Worksheet_Change). Die Farben und Grenzwerte im Blatt Uhrzeiten kann man aendern, es ist nur noetig, den Bereich neu zu benennen (Menue Einfuegen/Name/Definieren), damit es auf die aktuellen Grenzwerte und dazu gehoerigen Farben zeigt (Die Grenzwerte und dazu gehoerigen Farben findest Du im Blatt "Uhrzeiten", der Code bezieht sich auf des Blatt "Data", was man auch aendern kann.). Gruss Dan, CZ. [DDMAIL@seznam.cz]
Hier der Code (es befindet sich im Classen Module des Balttes "Data") :


' Der Code wird ausgefuehrt, wenn man den Inhalt einer Zelle(n) in der Spalte TARGET_COL aendert
' Der Text-Wert in der Zelle(n) wird mit den Granz-Werten in dem Blatt "Uhrzeiten" vergleicht
' wenn es in einen Bereich passt, dann werden die Spalten SPALTEN_MARKIEREN in der Zeile der Zelle(n) markiert
Option Explicit
Private Const TARGET_COL         As Byte = 4   ' Spalte "D"
Private Const UHRZEITEN_WSH      As String = "Uhrzeiten"
Private Const UHRZEITEN_RNG      As String = "Uhrzeiten"
Private Const SPALTEN_MARKIEREN  As String = "A:K"
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim rngIntersect As Variant
    
    Set rngIntersect = Application.Intersect(Me.Columns(TARGET_COL), Target)
    
    If (rngIntersect Is NothingThen Exit Sub
    
    Call UhrzeitenMarkieren(rngIntersect, Worksheets(UHRZEITEN_WSH).Range(UHRZEITEN_RNG), SPALTEN_MARKIEREN)
End Sub
Anzeige
AW: Bestimmte Zeilen mit Makro farbig markieren
20.10.2004 15:40:59
Monika
danke Dir. Auf Anhieb hat es allerdings nicht funktioniert.
Hier geht´s nicht weiter:
Set rngIntersect = Application.Intersect(Me.Columns(TARGET_COL), Target)
Ich werde morgen nochmal daran gehen, ich bin noch auf der Suche nach einem
Makro, welches mir speziell sortiert- weder absteigen noch aufsteigend, sondern
nach meinen Wünschen.
Danke und schöne Grüsse, Monika
AW: Bestimmte Zeilen mit Makro farbig markieren
Dan
Hallo, das ist merkwuerdig. Ich denke, dass ich den Code mehrmals getestet habe. Wie es gleich auf Anhieb nicht laufen koennte ist fuer mich wirklich eine Ueberaschung :-).
Die Zeile des Codes :
Set rngIntersect = Application.Intersect(Me.Columns(TARGET_COL), Target)
ist also nicht durchgekommen. Was fuer eine Fehlermeldung hast Du bekommen?
Und wie hast Du das Makro gestartet?
Es wird mich freuen wenn Du mir antworten koenntest, weil das ist ein Raetsel und ich loese gerne Raetsel :-)
Gruss, Dan, CZ.
Anzeige

309 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige