Microsoft Excel

Herbers Excel/VBA-Archiv

Eingabe prüfen

Betrifft: Eingabe prüfen von: Scholli
Geschrieben am: 26.06.2008 15:40:13

Hallo Excel-Freunde,

folgendes Problem:
Ich habe eine Ferienwohnung mit 10 Zimmern, nun habe ich eine kleine Excel-Tabelle erstellt mit:
A Zimmer-Nr.
B Anreise-Datum
C Abreise-Datum
und will einige Datensätze jetzt untereinander schreiben, also Bsp:
Zi.-Nr An-Dat Ab-Dat
5 12.7.08 15.7.08
1 24.8.08 2.9.08
2 30.8.08 12.9.08 usw.

Wie kann ich jetzt bei der Eingabe weiterer Datensätze automatisch von Excel überprüfen lassen, ob ein Zimmer belegt ist? Bsp: Sollte jetzt als 4. Datensatz eingegeben werden:
1 26.8.08 4.9.08
müsste eine Fehlermeldung kommen (oder irgendetwas anderes, was mir sagt, dass das Zimmer belegt ist)
Bekomme es selber leider nicht hin.

Vielen Dank
Scholli

  

Betrifft: AW: Eingabe prüfen von: michael
Geschrieben am: 26.06.2008 17:09:28

Hi Scholli
Ganz anders aber ausbaufähig
Erstellen etwas aufwändig aber bei Excel gut sicher kein Prop.für dich.
lg michael



https://www.herber.de/bbs/user/53382.xls


  

Betrifft: AW: Eingabe prüfen von: Scholli
Geschrieben am: 26.06.2008 17:25:03

Hi Michael,
danke für Deine Lösung, ist aber nicht das, was ich wollte- da kann ich es ja auch in Outlook eintragen.
Ich will die datensätze untereinander eingeben und bei Doppelbelegung eine Meldung bekommen. Mir würde auch eine andere Farbe genügen (bedingte Formatierung?), Hauptsache nur, dass ich bei Doppelbelegung sofort einen Hinweis bekomme.
Scheint doch nicht so einfach zu sein.


  

Betrifft: AW: Eingabe prüfen von: Scholli
Geschrieben am: 26.06.2008 17:34:15

Frage offen


  

Betrifft: Ein paar Zeilen Code! von: Backowe
Geschrieben am: 27.06.2008 12:13:11

Hi,

probiere es mal so:

Private Sub Worksheet_Change(ByVal Target As Range)
'Code in das entsprechende Tabellenblatt
Dim Zelle As Range
Range("A2:C" & Target.Row).Interior.ColorIndex = xlNone
If Not Intersect(Target, Range("B2:B" & Target.Row)) Is Nothing And Target.Count = 1 Then
  For Each Zelle In Range(Cells(2, Target.Column), Cells(Target.Row - 1, Target.Column))
    If Target >= Zelle And Target <= Zelle.Offset(0, 1) And Cells(Target.Row, 1) = Cells(Zelle.Row, 1) Then _
      Range(Cells(Target.Row, 1), Cells(Target.Row, 3)).Interior.ColorIndex = 3
    Next
End If
If Not Intersect(Target, Range("C2:C" & Target.Row)) Is Nothing And Target.Count = 1 Then
  For Each Zelle In Range(Cells(2, Target.Column), Cells(Target.Row - 1, Target.Column))
    If Target >= Zelle.Offset(0, -1) And Target <= Zelle And Cells(Target.Row, 1) = Cells(Zelle.Row, 1) Then _
      Range(Cells(Target.Row, 1), Cells(Target.Row, 3)).Interior.ColorIndex = 3
  Next
End If
End Sub

Code eingefügt mit Syntaxhighlighter 4.15



  

Betrifft: AW: Ein paar Zeilen Code! von: Scholli
Geschrieben am: 27.06.2008 13:22:42

Danke,
leider kommt eine Fehlermeldung "Fehler beim Kompilieren" Außerhalb einer Prozedur ungültig (Markierung x1none)
Leider fehlen mir jegliche Programmierkenntnisse, um selber dran zu tüfteln.
Hast Du noch eine Idee?
Danke


  

Betrifft: Das heißt nicht x1none sondern xlnone oT von: Backowe
Geschrieben am: 27.06.2008 13:32:25




 

Beiträge aus den Excel-Beispielen zum Thema "Eingabe prüfen"