Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Anzeige
Inhaltsverzeichnis

Wochenenden leer lassen

Forumthread: Wochenenden leer lassen

Wochenenden leer lassen
26.02.2025 10:12:59
NicoHendrik
Hallo alle zusammen,

mein Versuch mein Problem mit VBA zu lösen hat leider nicht gebracht.
Jetzt versuche ich es mal anders.

kann mich vielleicht jemand mit folgendem Problem helfen:

Ich habe einen Jahreskalender (Urlaub / Abwesend) für unseren Verein mit 50 Mitglieder erstellt.

Es wird nur jedes Mal das Jahr geändert und die Wochenenden passen sich dann automatisch an.

In Bedingte Formatierung hab ich: =Wochentag(J$5;2)>=6 eingegeben und das ist für $J$5:$NK$58 gültig. Damit kann ich die Wochenenden schön darstellen.

Jetzt möchte ich gerne ab J7 bis NK58 die Zellen wo das Wochenende angezeigt wird, leer bleiben dh. das keiner was in diese Zellen reinschreiben kann. Dies geht nur mit VBA, da die Wochenenden sich mit jedem Jahr ja verschieben.

Da meine VBA Kenntnisse sehr mau sind bitte ich um Hilfe.

Mfg. Nico
Anzeige

22
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Wochenenden leer lassen
26.02.2025 12:48:49
Raimund
Hi Nico

So?

Ersetze "DeinBlattname" durch den tatsächlichen Namen deines Arbeitsblatts.
Setze ein Passwort deiner Wahl anstelle von "deinPasswort".

Sub SperreWochenenden()

Dim rng As Range
Dim cell As Range

' Definiere den Bereich
Set rng = ThisWorkbook.Sheets("DeinBlattname").Range("J7:NK58")

' Entferne vorherige Sperrungen
rng.Locked = False

' Überprüfe jede Zelle im Bereich
For Each cell In rng
If Weekday(cell.Value, vbMonday) >= 6 Then
cell.Locked = True
End If
Next cell

' Schütze das Blatt, um die Sperrung wirksam zu machen
ThisWorkbook.Sheets("DeinBlattname").Protect Password:="deinPasswort"
End Sub


Gruss

Raimund
Anzeige
AW: Wochenenden leer lassen
26.02.2025 13:49:27
charles
Nun frage ich mich, wo gibt es diese Datei, damit man Testen könnte ....
Man würde das auch gerne nachvollziehen wollen:
Ersetze "DeinBlattname" durch den tatsächlichen Namen deines Arbeitsblatts.
Setze ein Passwort deiner Wahl anstelle von "deinPasswort".

???
AW: Wochenenden leer lassen
26.02.2025 14:37:33
NicoHendrik
Hallo Raimund,

vielen Dank für die Antwort.

dein Code geht leider bei "rng.Locked = False" auf Störung.

Was tun?

Eine Sache habe ich noch, viele wollen das ich eine Datei hochlade, mit Apple gibt es da wohl Probleme.

Gruß Nico
Anzeige
AW: Wochenenden leer lassen
26.02.2025 15:09:44
Raimund
Hi Nico

Versuche es einfach mit dem hochladen Deiner Datei.

Der Fehler bei rng.Locked = False könnte darauf zurückzuführen sein, dass das Arbeitsblatt, auf dem die Zellen liegen, nicht geschützt ist. Wenn das Blatt geschützt ist, kann der Locked-Status der Zellen nicht geändert werden.

Sub SperreWochenenden()

Dim rng As Range
Dim cell As Range
Dim ws As Worksheet

' Definiere das Arbeitsblatt
Set ws = ThisWorkbook.Sheets("DeinBlattname")
Set rng = ws.Range("J7:NK58")

' Überprüfe, ob das Blatt geschützt ist und entferne den Schutz
On Error Resume Next
ws.Unprotect Password:="deinPasswort"
On Error GoTo 0

' Entferne vorherige Sperrungen
rng.Locked = False

' Überprüfe jede Zelle im Bereich
For Each cell In rng
If Weekday(cell.Value, vbMonday) >= 6 Then
cell.Locked = True
End If
Next cell

' Schütze das Blatt, um die Sperrung wirksam zu machen
ws.Protect Password:="deinPasswort"
End Sub


Gruss

Raimund
Anzeige
AW: Wochenenden leer lassen
26.02.2025 16:55:05
NicoHendrik
Hallo Raimund,
Im Forum hab ich gesehen das Apple Probleme macht um eine Datei in diesen Forum hoch zu laden (egal ob xls,xlsm, PDF, PNG usw.) , ich bekomme es nicht hin.

Ich hab deinen neuen Code eingegeben, funktioniert aber nur bedingt. Es dauert sehr lange bis der Code ausgeführt wird und leider sperrt dein Code jetzt alles. es sollte nur sein das wenn in den Wochenenden was eingetragen wird, das auch wieder gelöscht wird.

Die Zellen dürfen nicht geschützt sein. Mit markieren der Zellen von... bis und den Code Selection = 1 befülle ich die Zellen und mit Bedingte Formatierung werden die Zellen dann farblich hervorgehoben. Sicher kann ich die Wochenenden aussparren oder auch manuell löschen, es wäre aber schön wenn diese 1 in Samstag und Sonntag automatisch gelöscht werden.
Anzeige
AW: Wochenenden leer lassen
26.02.2025 17:06:53
Onur
"Im Forum hab ich gesehen das Apple Probleme macht um eine Datei in diesen Forum hoch zu laden (egal ob xls,xlsm, PDF, PNG usw.) , ich bekomme es nicht hin. "
Versuche es mit "Alle Dateien" in der Auswahl der Endungen (unten) im Auswahlfenster für die Datei....
AW: Wochenenden leer lassen
26.02.2025 18:34:07
NicoHendrik
Hallo Onur,
ich kann machen was ich will, es lässt sich einfach keine Datei hochladen, und ich find so schnell auch niemand der einen Windows Rechner mit Excel hat.

Gruss Nico
Anzeige
AW: Wochenenden leer lassen
26.02.2025 18:35:53
Onur
Dann lade doch deine Datei bei Dropbox hoch und poste hier den Link dazu.
AW: Wochenenden leer lassen
26.02.2025 17:34:07
Raimund
Hi Nico

Was du haben wolltest, war: leer bleiben dh. das keiner was in diese Zellen reinschreiben kann.
Deswegen waren die Zellen geschützt.

Vielleicht diesmal?

Der Code überprüft jede Zelle im angegebenen Bereich und löscht nur den Inhalt der Zelle, wenn das Datum auf einen Samstag oder Sonntag fällt und der Wert "1" ist.

Sub EntferneWochenendEintraege()

Dim rng As Range
Dim cell As Range
Dim ws As Worksheet

' Definiere das Arbeitsblatt
Set ws = ThisWorkbook.Sheets("DeinBlattname")
Set rng = ws.Range("J7:NK58")

' Überprüfe jede Zelle im Bereich
For Each cell In rng
' Prüfe, ob die Zelle ein Datum enthält und ob es ein Samstag oder Sonntag ist
If IsDate(cell.Value) Then
If Weekday(cell.Value, vbMonday) >= 6 Then
' Wenn der Wert 1 ist, lösche ihn
If cell.Value = 1 Then
cell.ClearContents
End If
End If
End If
Next cell
End Sub


Gruss

Raimund
Anzeige
AW: Wochenenden leer lassen
26.02.2025 18:29:48
NicoHendrik
Hallo Raimund,

leider klappt es nicht. Bei der Bedingte Formatierung hab ich eingegeben: =WOCHENTAG(J$5;2)>=6 und das gilt für $J$5:$NK$58. Das löschen soll in J7:NK58 statt finden.

Da wo das löschen statt finden soll steht keinen Datum drin. ???

Sorry wenn ich dir viel Arbeit mache, bin erst seit 1 Jahr mit Excel beschäftig und auch schon 83 Jahre alt. (Wenn Mann alt ist, ist eben manches schwerer)

Anzeige
AW: Wochenenden leer lassen
26.02.2025 18:36:28
Raimund
Hi Nico

Post Deine Datei, wie Onur vorgeschlagen hat: Versuche es mit "Alle Dateien" in der Auswahl der Endungen (unten) im Auswahlfenster für die Datei....

Ohne die Datei wird es wohl nichts werden

Gruss

Raimund
AW: Wochenenden leer lassen
26.02.2025 19:32:14
NicoHendrik
Userbild

Leider ist die Datei 1,3MB groß, daher ein Screenshot. Oben ist ein durchgehender grüner Balken und unten so wie es sein muss mit Unterbrechungen für das Wochenende.

Den grünen Balken mache durch das anwählen der Zellen und mit den Button "Urlaub" und VBA Befehl: Selection = 1 und Bediengte Formatierung.

Gruss Nico
Anzeige
AW: Wochenenden leer lassen
26.02.2025 20:28:59
Onur
Das Problem hätte schon vor STUNDEN gelöst sein können, wenn du die Datei gepostet hättest.
Guckst du hier:
https://www.herber.de/bbs/user/176013.xlsm
Anzeige
AW: Wochenenden leer lassen
27.02.2025 06:29:59
NicoHendrik
Recht hast du ja, aber es gaben Probleme mit den Hochladen. Am Ende hat es dann mit Drag und Drop geklappt, anders ging es mit Apple einfach nicht.

Nochmals vielen Dank an euch Beide, es klappt jetzt hervorragend.

Gruss Nico
AW: Wochenenden leer lassen
26.02.2025 10:59:24
NicoHendrik
Hola,
warum bleibst du nicht im alten Thread?

Ganz einfach, weil niemand darauf eine Lösung vorgeschlagen hat und ich alles nochmal anders erklären wollte.

Das einstige was ich gerne hätte, ist eine Lösung und nicht irgendwelche fragwürdige Kommentare.
Anzeige
AW: Wochenenden leer lassen
26.02.2025 11:22:53
Pierre
Was für fragwürdige Kommentare?

Du wurdest 2x gebeten, eine (Beispiel)datei hochzuladen, da man ansonsten kaum bis gar nicht helfen kann.

Darauf kommt gar nix von dir.
AW: Wochenenden leer lassen
26.02.2025 11:43:16
NicoHendrik
Meine Anfrage war und ist sehr Eindeutig. Ich verzichte auf die Hilfe von arbeitslose halb Informatiker.
dann viel Spaß ohne Hilfe der"arbeitslosen Halbinformatiker"
26.02.2025 11:48:29
Pierre
Anzeige
AW: Wochenenden leer lassen
26.02.2025 12:56:36
Onur
"Ich verzichte auf die Hilfe von arbeitslose halb Informatiker"
Du solltest vielleicht erst mal Deutsch lernen statt VBA oder EXCEL...
Anzeige
Anzeige
Live-Forum - Die aktuellen Beiträge
Datum
Titel
14.05.2026 13:31:09
14.05.2026 09:50:42
13.05.2026 19:14:18