Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
452to456
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
452to456
452to456
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Zelle beim Makro nicht verlassen

Zelle beim Makro nicht verlassen
10.07.2004 14:05:17
poleposition
Ich mache grad eine Tabelle und würde gern nach jeder Zelländerung die Tabelle neu sortieren.
Das ist mein Code.....was muss ich noch reinschreiben ?
Option Explicit

Private Sub Worksheet_Calculate()
Application.EnableEvents = False
Call sorttab
Application.EnableEvents = False
End Sub


Private Sub Worksheet_Change(ByVal target As Excel.Range)
If Not (Application.Intersect(target, Range("b46:m41").Columns(9)) Is Nothing) Then
Call sorttab
End If
End Sub

Sub sorttab()
Application.ScreenUpdating = False
With Sheets("GruppeA")
.[B46:M49].Copy .[B38:M41]
.[B38:M41].Sort Key1:=.[J38], Order1:=xlDescending, Key2:=.[i38], _
Order2:=xlDescending, Key3:=.[F38], Order3:=xlDescending, Header:=xlGuess
End With
Application.ScreenUpdating = True
End Sub

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zelle beim Makro nicht verlassen
K.Rola
Hallo,
in deiner Tabelle stimmen die Formeln nicht, dann kann die Sortierung
natürlich nicht so ausfallen, wie erwartet.
https://www.herber.de/bbs/user/8330.xls
Gruß K.Rola
AW: Zelle beim Makro nicht verlassen
Martin
Hallo ?,
1. Lies mal die Forums-FAQ.
2. Wieso ein neuer Thread?
Zur Sache:
1. Statt

Private Sub Worksheet_Calculate()
Application.EnableEvents = False
Call sorttab
Application.EnableEvents = False
End Sub

muß es richtig heißen

Private Sub Worksheet_Calculate()
Application.EnableEvents = False
Call sorttab
Application.EnableEvents = True
End Sub

Ansonsten werden beim ersten Durchlauf die Ereignisse ausgeschaltet und dann funktionieren beide Ereignisprozeduren nicht mehr. Bevor Du weiter testest, laß erst mal folgendes Makro laufen:
Sub Ereignisse_ein()
Application.EnableEvents = True
End Sub
2. Der Sinn von

Private Sub Worksheet_Change(ByVal target As Excel.Range)
If Not (Application.Intersect(target, Range("b46:m41").Columns(9)) Is Nothing) Then
Call sorttab
End If
End Sub

erschließt sich mir nicht. Das Makro sorttab wird nur dann aufgerufen, wenn in den Zellen J41:J46 etwas geändert wird. Soll das so sein?
3. Der Code von sorttab gehört in ein normales Modul. Die Zeile
.[B46:M49].Copy .[B38:M41]
ist m.E. überflüssig, da in beiden Bereichen ja die gleichen Formeln stehen.
Gruß
Martin Beck
Anzeige
AW: Zelle beim Makro nicht verlassen
K.Rola
Hallo,
"3. Der Code von sorttab gehört in ein normales Modul."
Wieso das denn?
Gruß K.Rola
M.E. übersichtlicher (oT)
Martin
AW: Zelle beim Makro nicht verlassen
10.07.2004 20:23:29
poleposition
Manno......das wars.....False auf True setzen....DANKE NOCHMAL.
Jetzt funzt es.
AW: Zelle beim Makro nicht verlassen
K.Rola
Hallo,
die Formeln stimmen trotzdem nicht.
Gruß K.Rola

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige