AW: Meldung kommt nicht
16.01.2009 23:38:00
Ramses
Hallo
"...Hatte gehofft, daß ich den gleichen Code wohl in allen Blätter reinkopieren kann...."
Du bist ein kleiner Scherzkeks :-)
Hellsehen kann EXCEL nicht.
Du musst den Code auf jede Tabelle kopieren WO EINE EINGABE erfolgt UND den Eingabebereich natürlich anpassen,... oder woher soll EXCEL wissen welcher Bereich geprüft werden soll
Hier eine Alternative die zumindest zentral verwaltet werden kann
'In das Klassenmodul "Diese Arbeitsmappe"
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Select Case Sh.Name
Case "Tabelle1"
With Sh
'Zellbezüge anpassen
If Not Intersect(Target, Sh.Range("C5:C" & Sh.Cells(Sh.Rows.Count, "C").End(xlUp). _
Row)) Is Nothing And Target.Count = 1 Then
If Application.CountIf(Sh.Range("C5:C" & Target.Row), Target) > 1 Then _
MsgBox "Nummer ist schon vorhanden!"
Exit Sub
End If
End If
End With
Case Tabelle2
With Sh
'Zellbezüge anpassen
If Not Intersect(Target, Sh.Range("C5:C" & Sh.Cells(Sh.Rows.Count, "C").End(xlUp). _
Row)) Is Nothing And Target.Count = 1 Then
If Application.CountIf(Sh.Range("C5:C" & Target.Row), Target) > 1 Then _
MsgBox "Nummer ist schon vorhanden!"
Exit Sub
End If
End If
End With
Case Tabelle3
With Sh
'Zellbezüge anpassen
If Not Intersect(Target, Sh.Range("C5:C" & Sh.Cells(Sh.Rows.Count, "C").End(xlUp).Row)) _
Is Nothing And Target.Count = 1 Then
If Application.CountIf(Sh.Range("C5:C" & Target.Row), Target) > 1 Then _
MsgBox "Nummer ist schon vorhanden!"
Exit Sub
End If
End If
End With
End Select
End Sub
Alle anderen Codes aus den jeweiligen Tabellen müssen gelöscht werden
Gruss Rainer