Worksheet_Change: Problem mit Zeilenlöschen
27.07.2007 10:37:45
Düppi
um Hilfe bitte ich Euch bei folgendem Problem: Folgender Code prüft Eingaben über Daten, Gültigkeit, Liste im Eingabebereich C5:C52 (Spalte 3), vergleicht die Eingabe als Suchstring mit Suchbereich AY126:AY263 (Spalte 52) und gibt in Ausgabespalte 70 einen bestimmten Wert aus, den ich (mit einem anderen Makro) in eine txt-Datei schreibe. Läuft soweit, auch einzelne Zellen in C5:C52 kann ich mit Löschtaste leeren und per Makro in Ausgabespalte 70 auch. Nur nur wenn ich in meinem Worksheet_Change mehrere Zeilen in C5:C52 markiere, werden die Werte in Ausgabespalte 70 nicht gelöscht. Ich weiß, Target hat nur eine Zelle. Die Suche in der Recherche verlief erfolglos - wer kann mir helfen, soweit bin ich doch von meiner Lösung nicht mehr entfernt..., glaubt und hofft Düppi.
Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
If Application.CutCopyMode = xlCopy Then Exit Sub
Dim Suchbereich As Range
Dim Suchstring As String
Dim Ausgabespalte As Integer
If Not Intersect(Target, Range("C5:C52")) Is Nothing And Target.Count = 1 Then
Suchstring = Target.Value
Set Suchbereich = Range("AY126:AY263").Find(What:=Suchstring, LookAt:=xlPart)
If Target.Column = 3 Then Ausgabespalte = 70
If Suchbereich Is Nothing Then
Exit Sub
End If
If Not Suchbereich Is Nothing And Not IsEmpty(Target) Then
Cells(Target.Row, Ausgabespalte) = Cells(Suchbereich.Row, 52)
End If
If IsEmpty(Target) Then
For Each Target In ActiveWindow.RangeSelection
Cells(Target.Row, Ausgabespalte).ClearContents
Next Target
End If
End If
Application.EnableEvents = True
End Sub