Mehrere Worksheet_Change-Ereignisse?

Bild

Betrifft: Mehrere Worksheet_Change-Ereignisse?
von: Benni
Geschrieben am: 10.11.2003 14:20:35

Moin zusammen!

Hab ein Problem mit meinem Protokoll welches ich über worksheet_change erstelle:




Private Sub worksheet_change(ByVal target As Range)
'Änderung der Maschinenzahl bis ans Ende der Tabelle übernehmen und neuen Wert ins Protokoll übernehmen
   Dim r1 As Range
   Dim r2 As Range
   Dim rGes As Range
   Dim Neuwert As Variant
   Dim spalte As Integer
   Dim Reihe As Integer
         
   If Intersect(target, Range("c4:aq13")) Is Nothing Then Exit Sub ' GoTo _Aenderung
   Neuwert = target.Value
   Application.EnableEvents = False
   On Error GoTo errorhandler
   Reihe = target.Row
   spalte = target.Column
   Worksheets("Maschinenzahlen").Activate
   For i = spalte To 43
   Cells(Reihe, i).Value = Neuwert
   Next i
   With Worksheets("Protokoll")
      irow = .Cells(Rows.Count, 1).End(xlUp).Row + 1
      .Unprotect password:=""
      If irow > 200 Then
      .Rows(3).EntireRow.Delete shift:=xlUp 
      irow = 200
      End If
      
      .Cells(irow, 1).Value = target.Address(False, False)
      .Cells(irow, 2).Value = "Maschinenzahlen"
      .Cells(irow, 3).Value = "geändert auf:"
      .Cells(irow, 4).Value = Neuwert
      .Cells(irow, 5).Value = Date
      .Cells(irow, 6).Value = BenutzerName1
      .Protect password:=""
   End With
   
'Aenderung:
'
'   Dim vNew As Variant, vold As Variant
'   Dim irow As Integer
'   If Intersect(Target, Range("A15:aq50")) Is Nothing Then Exit Sub
'   vNew = Target.Value
'   Application.EnableEvents = False
'   On Error GoTo ErrorHandler
'   Application.Undo
'   vold = Target.Value
'   Target.Value = vNew
'   With Worksheets("Protokoll")
'      irow = .Cells(Rows.Count, 1).End(xlUp).Row + 1
'      .Unprotect Password:=""
'      .Cells(irow, 1).Value = Target.Address(False, False)
'      .Cells(irow, 2).Value = "Maschinenzahlen"
'      .Cells(irow, 3).Value = vold
'      .Cells(irow, 4).Value = vNew
'      .Cells(irow, 5).Value = Date
'      .Cells(irow, 6).Value = Application.UserName
'      .Protect Password:=""
'   End With
errorhandler:
   Application.EnableEvents = True
End Sub




leider kann ich das obere Erignis nicht mit dem ab Aenderung verknüpfen, deshalb auch der unter Bereich mit ' davor!
Ich möchte also unterschiedliche Ereignisse, je nachdem wo der Benutzer etwas eingibt!

Hat da jemand eine Lösung???

Danke im Voraus,

MfG
Benni
Bild


Betrifft: AW: Mehrere Worksheet_Change-Ereignisse?
von: Yal
Geschrieben am: 10.11.2003 14:48:14

Probiere mit dem Ereignis Worksheet_SeletionChange


Bild


Betrifft: Das Ereignis kenn ich nicht,näheres?
von: Benni
Geschrieben am: 10.11.2003 14:51:42

Hi Yal,

das Ereignis kenn ich nicht, kannst mir näheres zum Umgang damit sagen? Klingt auf jeden Fall nach dem richtigen...

Danke,

Benni


Bild


Betrifft: AW: Das Ereignis kenn ich nicht,näheres?
von: Yal
Geschrieben am: 10.11.2003 15:11:07

wenn Du im Visual Basic Editor bist, doppelklick im Projekt-Explorer (Verzeichnisartige Darstellung der Objekten, üblicherweise auf linke Seite) auf dem gewünschte Blatt.
Im Coding-Fenster, oben Links ist eine kleine Fenster mit "(Allgemein)" drin. Aufklappen und "Worksheet" selektieren. Es fügt sich das Rumpft (hört sich komisch, aber so heißt es in Excel Hilfe) für das Ereignis-Prozedure:


Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
End Sub


Da hast Du schon, was wir suchen. Aber um noch schlauer zu werden: oben rechts, wo ein ähnliche Fenster mit jetzt "SelectionChange" steht, ist die Auflistung der für den Worksheet verfügbare Ereignis-Prozeduren: BeforeDoubleClick, Activate, Deactivate, usw.

Viel Spass beim Ausprobieren.

Yal


Bild


Betrifft: AW: Das Ereignis kenn ich nicht,näheres?
von: Benni
Geschrieben am: 10.11.2003 15:40:39

Hallo Yal,

Danke für den Tipp, aber wie ich es einfüge war eigentlich nicht mein Problem, sondern wie ich es im Vergleich zu Change anwende, gerade bezogen auf mein Problem! Wenn du mir da irgendwie weiterhelfen könntest wär das echt super! Ich weiß z.B. nicht wo der große Unterschied zum Change-Ereignis ist bzw. ob man das Change für verschiedene Bereiche festlegen kann???

MfG Benni


Bild

Beiträge aus den Excel-Beispielen zum Thema " Mehrere Worksheet_Change-Ereignisse?"