Forumbeitrag
Excel-Version des Fragestellers:
2019
Erfahrungslevel des Fragestellers:
VBA nur mit Recorder
Moin Sabrina, :-)
... Grippe ist nicht zu spaßen. ;-)
Lieber ausruhen. ;-)
Wenn
nicht nur "Doppler", sondern
jede Eingabe einer Zahl in der "
externen" Datei (
Test_Otto.xlsm) geprüft werden soll,
dann lass das
blnDoppelt-Zeug weg. ;-)
Option Explicit
Const strPath As String = "C:\Temp\"
Const strFile As String = "Test_Otto.xlsm"
Const strSheet As String = "Test"
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Dim wksSheet As Worksheet
Dim varMatch As Variant
Dim lngNr As Long
On Error GoTo Fin
If Not Intersect(Target, Sh.Range("A10:A1000")) Is Nothing Or Not Target.CountLarge > 1 Or Not Target = "" Then
Application.EnableEvents = False
lngNr = Target.Value
For Each wksSheet In Worksheets
varMatch = Application.Match(Target.Value, wksSheet.Range("A10:A10000"), 0)
If Not IsError(varMatch) Then
If wksSheet.Name <> Sh.Name Or varMatch + 9 <> Target.Row Then
MsgBox "Lfd. Nr. " & Target & " bereits vorhanden in " & wksSheet.Name & " A" & varMatch + 9, vbExclamation
Target = ""
Target.Select
Exit For
End If
End If
Next wksSheet
If IsError(ExecuteExcel4Macro("MATCH(" & lngNr & ",'" & strPath & "[" & strFile & "]" & strSheet & "'!R9C3:R2000C3,0)")) Then MsgBox "Nummer " & lngNr & " in " & strFile & " nicht vorhanden!"
End If
Fin:
Application.EnableEvents = True
End Sub
Servus
Case