Forumbeitrag
Excel-Version des Fragestellers:
2019
Erfahrungslevel des Fragestellers:
VBA nur mit Recorder
Moin Sabrina, :-)
... richtig verstanden habe, dann so: ;-)
Option Explicit
Const strPath As String = "C:\Temp\"
Const strFile As String = "180621.xlsm"
Const strSheet As String = "Test"
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Dim blnDoppelt As Boolean
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
blnDoppelt = True
Exit For
End If
End If
Next wksSheet
If blnDoppelt Then
If IsError(ExecuteExcel4Macro("MATCH(" & lngNr & ",'" & strPath & "[" & strFile & "]" & strSheet & "'!R9C3:R2000C3,0)")) Then MsgBox "Nummer " & lngNr & " in " & strFile & " nicht vorhanden!"
End If
End If
Fin:
Application.EnableEvents = True
End Sub
Ist mit deiner (
externen) Beispieldatei (
180621.xlsm) getestet. ;-)
Anpassen musst du die
drei Const. ;-)
Und das hier "
R9C3:R2000C3" sucht in der
externen Datei in Spalte
C von Zeile
9 bis
2000. ;-)
R = Row und C = Column. ;-)
Servus
Case