Re: Sheets.Activate
24.10.2002 10:22:21
Andre B
Das Problem ist immernoch da.Wenn ich in aus dem Tabellenblatt VBA aufrufe, einmal dieses TabellenBlatt anzeigenlassen und dann wieder zurück zu Excel springe ist der Fehler meistens behoben und Activate funktioniert wieder.
Auf jeden Fall funktioniert es wieder, wenn ich kurz Excel minimiere oder anders das Programm wechsel und wieder zurück gehe!!!!
Also, hier der Code, der den Filter auslöst:
Sub Matchd()
Sheets("Match").Visible = True
Sheets("Match").Select
ActiveSheet.Unprotect ("andre")
Sheets("Debitorenstamm").Range("A8:H15").AdvancedFilter Action:=xlFilterCopy _
, CriteriaRange:=Sheets("Debitorenstamm").Range("B2:B3"), CopyToRange:= _
Sheets("Match").Range("B8:I8"), Unique:=False
Sheets("Match").Select
Sheets("Match").Activate
ActiveSheet.Protect ("andre")
Range("c8").Select
End Sub
Im Tabellenblatt("Match") liegt folgender Code:
Private Sub Worksheet_Activate()
Application.OnKey "{ENTER}", "ZellAenderung2"
End Sub
Private Sub Worksheet_Deactivate()
Application.OnKey "{ENTER}"
End Sub
Dann in einem Modul:
Sub ZellAenderung2()
Const BEREICH1 = "B9:B65000"
If Not Intersect(ActiveCell, Range(BEREICH1)) Is Nothing Then
Range("A1").Value = ActiveCell.Offset(0, 0)
Range("a1").Select
Sheets("Angebotserfassung").Select
Range("D6").Select
ActiveCell.FormulaR1C1 = Range("Match!A1").Value
GoTo Ende
End If
Const BEREICH2 = "C9:C65000"
If Not Intersect(ActiveCell, Range(BEREICH2)) Is Nothing Then
Range("A1").Value = ActiveCell.Offset(0, -1)
Range("a1").Select
Sheets("Angebotserfassung").Select
Range("D6").Select
ActiveCell.FormulaR1C1 = Range("Match!A1").Value
GoTo Ende
End If
Const BEREICH3 = "D9:D65000"
If Not Intersect(ActiveCell, Range(BEREICH3)) Is Nothing Then
Range("A1").Value = ActiveCell.Offset(0, -2)
Range("a1").Select
Sheets("Angebotserfassung").Select
Range("D6").Select
ActiveCell.FormulaR1C1 = Range("Match!A1").Value
GoTo Ende
End If
End if