Ich würde mich freuen, wenn mir jemand dieses tolle Makro so
umbauen könnte, das wenn es einen eingegebenen Wert in Tabelle Zeit (Splate C), in Tabelle Stammdaten nicht gibt, in Tabelle Zeit Spalte E bis I ein ? geschrieben wird.
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
Dim var As Variant
If Target.Column <> 3 Then Exit Sub
With Application
var = .VLookup(Target.Value, Worksheets("Stammdaten").Columns("A:I"), 2, 0)
If Not IsError(var) Then
Target.Offset(0, 2) = .VLookup(Target.Value, Worksheets("Stammdaten").Columns("A:I"), 2, 0)
Target.Offset(0, 3) = .VLookup(Target.Value, Worksheets("Stammdaten").Columns("A:I"), 3, 0)
Target.Offset(0, 4) = .VLookup(Target.Value, Worksheets("Stammdaten").Columns("A:I"), 4, 0)
Target.Offset(0, 5) = .VLookup(Target.Value, Worksheets("Stammdaten").Columns("A:I"), 5, 0)
Target.Offset(0, 6) = .VLookup(Target.Value, Worksheets("Stammdaten").Columns("A:I"), 6, 0)
Target.Offset(0, 7) = .VLookup(Target.Value, Worksheets("Stammdaten").Columns("A:I"), 7, 0)
Target.Offset(0, 8) = .VLookup(Target.Value, Worksheets("Stammdaten").Columns("A:I"), 8, 0)
Target.Offset(0, 9) = .VLookup(Target.Value, Worksheets("Stammdaten").Columns("A:I"), 9, 0)
End If
End With
Vielen Dank für eure Hilfe!
Tschüß
Rolf