Sub Worksheet_Change(ByVal target As Range)

16/04/2008 - 14:41 von Froggy | Report spam
Real Name: Hervé RICHARD

Hallo NG,

ich hatte es so verstanden dass wenn ich in einer Worksheet die procedur
"Sub Worksheet_Change(ByVal target As Range)" benutze, "target" nur den Wert
des geànderte Ranges (bezw. Zelle) annimmt.

Tastàchlich ist target die geànderte Zelle, aber XL scheint -zig mal die
Schleife durchzugehen (so ca. die Anzahl der Zellen mit Inhalt). Ich verstehe
dieses Verhalten nicht.

Ist das normal ? kann man nicht, wenn eine bestimmte Zelle geàndert wird,
nur 1 Schleife machen ?

Danke.

PS: der Grund der Frage, ist a- ein Performance Problem, und b- da ich recht
viele Operationen habe, kriege ich schnell Fehlermeldungen à la "kein
Speicherkapazitàt mehr vorhanden"
 

Lesen sie die antworten

#1 Robert Gelbmann
16/04/2008 - 14:49 | Warnen spam
Hallo Richard!

"Froggy" schrieb ...
ich hatte es so verstanden dass wenn ich in einer Worksheet die
procedur
"Sub Worksheet_Change(ByVal target As Range)" benutze, "target" nur
den Wert
des geànderte Ranges (bezw. Zelle) annimmt.

Tastàchlich ist target die geànderte Zelle, aber XL scheint -zig mal
die
Schleife durchzugehen (so ca. die Anzahl der Zellen mit Inhalt). Ich
verstehe
dieses Verhalten nicht.

Ist das normal ? kann man nicht, wenn eine bestimmte Zelle geàndert
wird,
nur 1 Schleife machen ?



(1) Ja, Target ist der Zellbereich, der bei jeweils einer Änderung
geàndert wurde.

(2) Wenn dein Excel das Change-Ereignis öfter aufruft, dann hast du
auch mehrere Änderungen (in oder außerhalb des Makros!).

Was macht denn dein Makro im Falle eines Change?
Evtl. könnte man nàmlich die Ereignisbehandlung vorübergehend
deaktivieren.

In der Hoffnung geholfen zu haben, verbleibe ich mit einem leisen


Servus aus Wien,
-Robert Gelbmann-

I solemnly swear that I'm up to no good.

Ähnliche fragen