Worksheet_Activate
03.01.2015 18:42:56
Laser
Hallo Leute
Ich wollte einen Code Laufen lassen mittels
Private Sub Worksheet_Activate()
End Sub
Nun habe ich folgendes Problem das ich mit einem Macro aus einem anderen Tabellenblatt genau auf diese Blatt zugreifen muss um etwas abzufragen, jetzt führt er denn Code Doppelt aus. Gibt es eine Möglichkeit, das Worksheet_Activate() zu deactivieren wenn ich mittels Sub Code darauf zugreife? und das es nur beim manuellen tabellenwechsel da Worksheet_Activate()ausgelöst wird.
Mittels diesem Code (in einem Modul) rufe ich die Tabelle auf wo das Worksheet_Activate() hinterlegt ist.
Private Sub Prüfen_neue_Artikel()
Application.ScreenUpdating = False
Sheets("Möbel Export").Activate
Dim i As Long, k As Long
On Error GoTo Fehler
i = 3 / k
Exit Sub
Sheets("Möbel Export").ShowAllData
Fehler:
Selection.AutoFilter Field:=1, Criteria1:="ja"
'MsgBox "Da war ein Fehler"
Sheets("Möbel Export").ShowAllData
ActiveSheet.PivotTables("PivotTable1").PivotCache.Refresh
ActiveSheet.PivotTables("PivotTable2").PivotCache.Refresh
Range("R6:AA150").Select
Selection.Copy
Range("Ae6").Select
ActiveSheet.Paste
Range("R154:AA304").Select
Selection.Copy
Range("Ae154").Select
ActiveSheet.Paste
With Intersect(Range("Ae6:Ae304"), ActiveSheet.UsedRange)
.SpecialCells(xlCellTypeBlanks).FormulaR1C1 = "=R[-1]C"
.Value = .Value
End With
ActiveSheet.PivotTables("PivotTable3").PivotCache.Refresh
Range("BG6:Bq150").Select
Selection.Copy
Range("bu6").Select
ActiveSheet.Paste
Range("b1").Select
With Intersect(Range("bu6:bu150"), ActiveSheet.UsedRange)
.SpecialCells(xlCellTypeBlanks).FormulaR1C1 = "=R[-1]C"
.Value = .Value
End With
Selection.AutoFilter Field:=1, Criteria1:="ja"
If Worksheets("Möbel Preisvergleich").Range("ao4") > 0 Then
Call MsgBox("Neuen Artikel bitte Daten exportieren Danke", vbExclamation, "Hinweis")
End If
If Worksheets("Möbel Preisvergleich").Range("ao4") <= 0 Then
Call MsgBox("Keine neuen Artikel", vbExclamation, "Hinweis")
Sheets("Möbel Preisvergleich").Activate
Exit Sub
End If
Application.ScreenUpdating = True
End Sub
Ich hoffe einer kann mir Helfenmfg
Laser