Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1152to1156
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
Inhaltsverzeichnis

Makro Schleife wird übersprungen

Makro Schleife wird übersprungen
Seher
Folgendes Makro habe ich durch Eure und andere Hilfe zusammenstellen können.
Option Explicit
Private Sub Workbook_SheetCalculate(ByVal Sh As Object)
Dim p As Long
'Dim sh As Worksheet
On Error GoTo Fehlerbearbeitung
Application.ScreenUpdating = False
Application.EnabelEvents = False
If Sh.Name = "MDAX" Then
For p = 3 To 60
If Sh.Cells(p, 8) = 1 Then
Sh.Cells(p, 8).EntireRow.Hidden = False
Else
Sh.Cells(p, 8).EntireRow.Hidden = True
End If
Next p
End If
Application.EnableEvents = True
Application.ScreenUpdating = True
Fehlerbearbeitung:
Application.EnableEvents = True
End Sub

Was möchte ich:
1. Filterung der Zeilen nach Spalte H (8 spalte in Excel)
2. Wenn in Spalte H eine 1 berechnet wird, dann Filterung nach 1 (Anzeige der Zeile in der die 1 steht)
3. Sobald durch Berechnung in Spalte 8 die 1 wieder "erlischt", dann Zeile ausblenden.
4. Grundlage für die Berechnung sind Daten welche über einen Server gezogen werden. Durch mich erfolgen
keine manuellen Eingaben.
Mit dem obigen Code, wird jedoch die Filterung nicht mehr durchgeführt. Wenn ich den Code "On Error..."
herausnehme, dann läuft das Programm in einen Endlosschleife und Excel "flackert" nur.
Könnt Ihr mir hierbei helfen dieses Problem zu lösen?
Grüße
Peter

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Makro Schleife wird übersprungen
04.05.2010 15:53:46
hary
Hallo Peter und Leser
Zur Info.
https://www.herber.de/forum/messages/1155259.html
schaetze Du kommst nicht in eine Endlosschleife, sondern der Code wird durch die alle hundertstel Sekunden stattfindenen Aktuellisierung ausgefuehrt. Kann mich aber auch Irren oder ich versteh es falsch.
Deshalb Frage offen.
gruss hary
AW: Makro Schleife wird übersprungen
04.05.2010 15:59:50
Seher
Hallo Harry,
das ist es, wo ich noch dabei bin dies herauszufinden.
Zur Probe habe ich mal die Aktualisierungen ausgeschaltet und eine Zahl aus der Berechnungsgrundlage manell geändert, mit Enter bestätigt. Sofort danach ist das Programm wieder in die Endlosschleife gelaufen.
Kann also auch gut Möglich sein, daß die Millisekündliche Aktualiserung damit nichts zu tun hat. Doch sicher bin ich da nicht.
Anzeige
AW: Makro Schleife wird übersprungen
04.05.2010 16:28:33
hary
Hallo
Irgendwas berechnet aber noch. Hab den Code manuell ausgefuehrt. Laueft durch und fertig.
Die Luecken sind durch das rausgenommene.

Private Sub Workbook_SheetCalculate(ByVal Sh As Object)
Dim p As Long
Application.ScreenUpdating = False
If Sh.Name = "MDAX" Then
For p = 3 To 60
If Sh.Cells(p, 8) = 1 Then
Sh.Cells(p, 8).EntireRow.Hidden = False
Else
Sh.Cells(p, 8).EntireRow.Hidden = True
End If
Next p
End If
Application.ScreenUpdating = True
End Sub

Frage offen. Mir faellt nix ein. Oder der MDax faellt zu schnell. ;-)) Setze gerade auf Put.
gruss hary
Anzeige
AW: Makro Schleife wird übersprungen
06.05.2010 07:54:27
fcs
Hallo Peter,
probier mal die folgende Variante, um den rekursiven Aufruf der Prozedur zu überbrücken.
Gruß
Franz
'### Code in einem allgemeinen Modul ###
'Erstellt unter Excel 2007
Option Explicit
Public bolCalculate As Boolean
'### Code in DieseArbeitsmappe   ###
Option Explicit
Private Sub Workbook_SheetCalculate(ByVal Sh As Object)
Dim p As Long
'Dim sh As Worksheet
On Error GoTo Fehlerbearbeitung
If Sh.Name = "MDAX" Then
If bolCalculate = False Then
bolCalculate = True
Application.ScreenUpdating = False
Application.EnabelEvents = False
For p = 3 To 60
If Sh.Cells(p, 8) = 1 Then
Sh.Cells(p, 8).EntireRow.Hidden = False
Else
Sh.Cells(p, 8).EntireRow.Hidden = True
End If
Next p
Application.EnableEvents = True
Application.ScreenUpdating = True
bolCalculate = False
End If
End If
Exit Sub
Fehlerbearbeitung:
Application.EnableEvents = True
Application.ScreenUpdating = True
bolCalculate = False
End Sub

Anzeige
AW: Makro Schleife wird übersprungen
06.05.2010 19:22:13
Seher
Hallo Franz,
SUUPER!!!! Genau so funktioniert es. Klasse.:-) :-) :)
Dankeschön DIR und allen die mir dabei geholfen haben.
Grüße
Peter

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige