Clever-Excel-Forum

Normale Version: Tiefgaragenreservierung
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2
Hallo zusammen,

ich würde gerne eine Parkplatzreservierung in Excel erstellen. Basis hierfür ist folgende Liste für jeden individuellen Parkplatz:

Spalte:
C = #-Nr.
D = Name
E = Kennzeichen
F = Anreise
G = Abreise

Die Liste soll alle Reservierungen beinhalten, die im aktuellen Jahr vorgenommen werden. Um Doppelbelegungen zu vermeiden brauche eine Datenüberprüfung aller vorangegangenen Eingaben, die einen Fehler ausgibt, wenn der Parkplatz in dem Zeitraum bereits belegt ist. Gibt es hier eine Möglichkeit?

Die Belegungsdaten des Parkplatzes (#-Nr., Gastname, Kennzeichen, Anreise, Abreise) vom heutigen Tag sollen dann in einem anderen Exceltabellenblatt bzw. Excel-Datei ausgegeben werden.

Habe schon

  1. Tiefgaragenplan:
    [attachment=16276]
  2. Liste Reservierungen:
    [attachment=16277]
Danke schon mal für eure Hilfe!

LG
Hi,

in der TG-Liste hast Du doch mit der "#-Nr." Spalte eine Identifikation des Parkplatzes, so daß Du nicht für jeden Stellplatz ein eigenes Register brauchst. Oder ist die #-Nr. nicht die Parkplatz-Nummer?
Hallo Rabe,

Danke für die schnelle Antwort und Entschuldigung, dass ich mich nicht klar genug ausgedrückt habe. Die Spalte #-Nr. bezeichnet die Hotelzimmer-Nummer des Gastes, nicht die PP-Nummer. Selbstverständlich hat jeder Parkplatz hat ebenfalls eine Nummer. Diese befinden sich an der Kopfseite des Parkplatzes z.B. die rote Nummer im folgenden Bild:


[attachment=16283]

Wenn der Parkplatz belegt ist, wird er rot unterlegt, wenn er frei ist, bleibt die PP-Nummer grau.
Im weißen Bereich des Parkplatzes sollte die Zimmernummer des Gastes, der Nachname des Gastes, das Kennzeichen des Autos auf dem PP, das Anreise- und das Abreisedatum stehen,
wobei die Spalte # Name (siehe Bild oben) aus zwei Zellen verkettet wird.

Ich hatte nur gedacht, dass es einfacher ist Excel entscheiden zu lassen, ob der Parkplatz am heutigen Tag belegt ist, wenn ich für jeden Parkplatz eine eigene Liste anlege. Wenn die Datenprüfung anhand einer PP-ID und die anschließende Datenausgabe im TG-Plan vom heutigen Tag auch möglich ist, wenn alle Informationen in einer Liste stehen, wäre das natürlich umso besser :)

Mein Problem ist hauptsächlich die Überprüfung, ob der PP bereits reserviert ist. Wäre natürlich blöd, wenn ich z. B. im Mai eine PP Reservierung für den PP40 für 6.-12 Dezember vornehme und im August für den gleichen PP von 8.-10. Dezember. Es können ja keine zwei Autos im selben Zeitraum auf dem gleichen PP stehen. In dem Fall möchte ich, dass Excel mir die Nachricht gibt, dass die Reservierung nicht möglich ist, da der PP in diesem Zeitraum bereits belegt ist.

LG
Eva
Hallo Eva,

m.M.n. ist die Datenstruktur verbesserungfähig:

Warum nicht in den Spalten alle Parkplatznummern, in den Zeilen alle Tage. Falls eine Reservierung vorliegt, werden die Zellen markiert und mit den Detailangaben verlinkt.

mfg
Hallo Fennek,

ich habe die Datenstruktur mal wie folgt geändert:

[attachment=16299]

Ich weiß nicht ganz genau, ob ich deine Idee richtig verstanden habe. Den TG Übersichtsplan habe ich beibelassen, da die Parkplätze aktuell nur intern Nummern haben und nicht beschriftet sind. Jedoch bin ich mit der Datenprüfung und Vermeidung von Doppelbelegungen immer noch nicht weiter gekommen.. Kann mir da jemand helfen?

Vielen Dank.
Hallo Eva,

nach ein paar Prüfungen könnte folgender Ansatz funktioniere:

im Blatt "Raster" echte xl Datumswerte verwenden

im Blatt "Datneingabe" per VBA (change_event) prüfen, ob ein Eingabe vollständig ist und dann diesen Zeitraum im Blatt Raster farbigmarkieren.

Die Makro sind machbar, aber nicht so ganz "basic". Der Zeitaufwand könnte bis zu einer Stunde betragen. Bevor ich ernsthaft damit anfange die Frage, ob so ein Ansatz für die in Frage kommt. Du solltest den Code verstehen und kleinere Änderungen vornehmen können.

mfg
Hallo Eva,

hier ist eine erste Version, die zwar funktioniert, aber keinerlei Fehler abfängt. Teste sie und berichte, was noch verbessert werden muss.

Bitte beschreibe konkret: "wenn in Zelle xy (Blatt i) der Wert yxz eingegebn wird, dann kommt eine Fehlermeldung in Zeile x.

mfg
Hi,

ich habe das Makro noch etwas erweitert um weitere Spalten (ND3 statt AG3) und einen Offset von 2 eingebaut (Anreise + 2, Abreise + 2), weil sonst die falschen Tage markiert würden.
Private Sub Worksheet_Change(ByVal Target As Range)
Dim WSF As WorksheetFunction: Set WSF = Application.WorksheetFunction
If Intersect(Range("B4:G" & Cells(Rows.Count, 2).End(xlUp).Row), Target) Is Nothing Then Exit Sub
       Ev = "counta(" & Range(Cells(Target.Row, 2), Cells(Target.Row, 7)).Address & ")"
       If Evaluate(Ev) = 6 Then
           With Sheets("Raster")
               Anreise = WSF.Match(CLng(CDate(Cells(Target.Row, "F"))), .Range("C3:ND3"), 0)
               Abreise = WSF.Match(CLng(CDate(Cells(Target.Row, "G"))), .Range("C3:ND3"), 0)
               PP = WSF.Match(Cells(Target.Row, "B"), .Range("B1:B49"), 0)
               .Range(.Cells(PP, Anreise + 2), .Cells(PP, Abreise + 2)).Interior.Color = vbGreen
           End With
       End If
End Sub

Ich hatte schon angefangen, das Rasterblatt zu transponieren, da ich es einfacher finde, nach unten zu scrollen, als nach rechts. Auch für einen Ausdruck ist das einfacher. Aber dazu muß dann auch noch das Makro umgeschrieben werden.
@ TE: Auch der 29.02. für ein Schaltjahr fehlt noch im Raster.

Hier noch ohne Makro:
[attachment=16304]
Hallo Eva,

kleine Ergänzungen:

-Prüfung auf doppelte Eintragungen
- von Hand markierte Bereiche in "Raster" werden in die Dateneingabe übernommen

mfg

(die Anmerkungen von Rabe sind, teilweise modifiziert, eingearbeitet)
Hi,

schön.

Noch ein kleines Gemecker:
Wie ist das im Schaltjahr mit dem 29.2.?
Da stimmt die Monats-Rahmen- und Überschriften-Formatierung nicht und die Datumszeile muß bis ND gehen.
Seiten: 1 2