03.07.2023, 15:24 (Dieser Beitrag wurde zuletzt bearbeitet: 03.07.2023, 15:29 von HKindler.)
Hi,
das ist ein typischer Fehler: x1Values <> xlValues (Eins <> kleines L)
Gleiches gilt für xlWhole.
Man sollte schon richtig abschreiben. Oder doch besser kopieren.
Solche Fehler merkt man leicht, wenn man ganz am Anfang eines Moduls Option Explicit setzt.
du willst doch VBA lernen!? warum versuchst du dann nicht selbst den Code anzupassen?
nach wie vor würde ich es über eine Schaltfläche ausführen
aber wenn du es unbedingt so willst...!
Code:
Option Explicit
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim KWSuche As Variant
Dim c As Range
Dim i As Integer
KWSuche = Sheets("Tabelle1").Range("J2").Value
With Sheets("Tabelle2")
Set c = .Rows(2).Find(KWSuche, LookIn:=xlValues, lookat:=xlWhole)
If Not c Is Nothing Then
For i = 3 To 6
.Cells(i, c.Column).Value = Sheets("Tabelle1").Cells(i + 1, 11).Value
Next
End If
End With
ThisWorkbook.Save
With Application
.DisplayAlerts = False
.Quit
End With
End Sub