Hallo ihr Lieben :)
Es tut mir wahnisnnig leid, dass ich mich noch mal an euch wenden muss. Ich habe eine Tabelle, in der durch ein Formular automatisiert Werte eingetragen werden. Das klappt auch super. Bei dieser Tabelle handelt es sich um eine Art Kalender mit verschiedenen Abteilungen. Wenn Abeilung 1 der Raum xy belegt hat, kann ihn Abteilung 2 ja nicht am selben Tag zur selben Uhrzeit nutzen. Daher habe ich Dank der Hilfe durch jemanden hier aus dem Forum eine Art "Konflikt Prozedur" angelegt. Das heißt, die sogenannte "Konfliktprozedur" überprüft in den angegebenen Zellen, den Inhalt auf den Namen des Raums. Wenn dieser zwei mal vor kommt, erscheint ein Hinweis und dieser "Konflikt" wird in eine seperate Tabelle eingetragen.
Die sieht folgendermaßen aus:
Sub Konflikt()
Dim c As Range
Dim Inhalt As String
Dim Ort As String
Ort = Kalender.CbGebaude + Kalender.txtRaum
'If Kalender.CbTag = "Montag" And Kalender.CbUhrzeitAnfang = "8" Then
With Worksheets("WS_Semesterplan").Range("E4:I4")
Set c = .Find(Ort, LookIn:=xlValues)
If Not c Is Nothing Then
firstAddress = c.Address
Worksheets("Konfliktliste").Activate
Range("A65536").End(xlUp).Offset(1, 0) = Kalender.CbFachbereich.Value
Range("B65536").End(xlUp).Offset(1, 0) = Kalender.CbVeranstaltung
Range("C65536").End(xlUp).Offset(1, 0) = Kalender.CbProfessor
MsgBox "Konflikt entdeckt"
Do
Set c = .FindNext(c)
Loop While Not c Is Nothing And c.Address <> firstAddress
End If
End With
End Sub
Mein jetztiges Problem ist, wenn ich von der Hand Werte in die angegebene Zelle schreibe, findet diese Prozedur den Fehler, selbst wenn ich vorher oder nachher Text hinter den Raumnamen schreibe(so ist es auch gewollt). Wenn ich die Werte jedoch per Formular eingebe, erkennt diese Prozedur den Konflikt nicht.
Also wenn die Werte von Hand genauso eingegeben werden, klappt alles wie gewünscht; lediglich nicht, wenn die Zellen durch das Formular gefüllt werden
Woran kann das liegen?
Kann mir da ggf. noch mal jemand helfen?
|