Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Zelle auslesen, Spaltenbereich färben

Zelle auslesen, Spaltenbereich färben
28.01.2022 15:30:05
Sebastian
Hallo,
Und zwar bin ich recht neu in der Arbeit mit VBA.
Und zwar habe ich in dem Zellen H12 - H42 das Datum stehen. 01.MM.JJ - 31.MM.JJ.
Jetzt möchte ich quasi das mein Makro prüft bei welchem Datum es sich um einen Sonntag handelt und dann in dieser Zeile den Spaltenbereich von H - R einfärbt.
Ich habe schon einen Code, aber dieser färbt mir leider immer nur die einzelne Zelle in der der Sonntag erkannt wird ein.
Ich hoffe auf Hilfe.
Vielen Dank.
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Zelle auslesen, Spaltenbereich färben
28.01.2022 15:31:42
SF
Hola,
wenn du schon einen Code hast, warum zeigst du ihn nicht?
Und warum per Makro? Dafür gibt es die bedingte Formatierung.
Gruß,
steve1da
AW: Zelle auslesen, Spaltenbereich färben
28.01.2022 15:54:46
GerdL
Moin Sebastian!
Pünktchenmuster:
Cells(X, 8).Resize(1, 11).Interior.Color= ..........
Range("H" & X & ":R" & X).Interior. ..... = .......
Gruß Gerd
Anzeige
AW: Zelle auslesen, Spaltenbereich färben
28.01.2022 19:26:51
Yal
Hallo Sebastian,
bedingte Formatierung, aber per Makro festgelegt:

Sub Makro4()
Range("H12:H42").FormatConditions.Add Type:=xlExpression, Formula1:="=WOCHENTAG(H12;2)=7"
With ActiveSheet.FormatConditions(1)
.PatternColorIndex = xlAutomatic
.Color = 255
.TintAndShade = 0
End With
End Sub
oder einzelgesetzt:

Sub makro5()
Dim Z
'Reset
With Range("H12:H42")
With .Interior
.Pattern = xlNone
.PatternColorIndex = xlAutomatic
.TintAndShade = 0
.PatternTintAndShade = 0
End With
'Einzelzelle
For Each Z In .Cells
If Weekday(Z.Value) = vbSunday Then
With Z.Interior
.PatternColorIndex = xlAutomatic
.Pattern = xlSolid
.Color = 255
End With
End If
Next
End With
End Sub
VG
Yal
Anzeige
AW: Zelle auslesen, Spaltenbereich färben
28.01.2022 19:40:38
GerdL
Moin Yal,
für Westeuropa schlage ich vor:
If Weekday(Z.Value, vbMonday) = vbSunday Then ..
Gruß Gerd
AW: Zelle auslesen, Spaltenbereich färben
30.01.2022 14:13:28
Yal
Hallo Gerd,
deine Vorschlag ist abgeleitet von der üblichen Verwendung der Excel-Formel "WOCHENTAG", wo der zweiten Parameter auf "2" gesetzt werden muss um 1 bis 7 als Montag bis Sonntag. Kann ich nachvollziehen und funktioniert leider unter VBA nicht.
Folgender Test:

Sub Wochentag_Test()
Dim i
For i = Date To Date + 7
Debug.Print Format(i, "DDD."), Weekday(i), Weekday(i, vbMonday), vbSunday
Next
End Sub
ergibt folgende Ergebnis

So.            1             7             1
Mo.            2             1             1
Di.            3             2             1
Mi.            4             3             1
Do.            5             4             1
Fr.            6             5             1
Sa.            7             6             1
So.            1             7             1 
Also unter VBA eindeutig auf die Kurzform gehen, oder auf

If Weekday(Z.Value, vbMonday) = 7 Then ..
VG
Yal
Anzeige
;

Forumthreads zu verwandten Themen

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