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

zuverlässiger undo bei change-ereignis

zuverlässiger undo bei change-ereignis
hotzi
hallo zusammen,
der u.g. code führt mir in verbindung mit dem chance-ereignis den undo nur dann zuverlässig aus, wenn ich die änderung mit der enter-taste abschließe. setzte ich den mauszeiger in eine andere zelle, wird die änderungen angenommen. gibt es auch für diese situation ein zuverlässigen undo
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("A1:R14")) Is Nothing Then
With Application
.EnableEvents = False
.UnDo
.EnableEvents = True
End With
Set Target = Nothing
end if
end Sub

danke + beste grüße
klaus
AW: zuverlässiger undo bei change-ereignis
28.08.2010 11:10:07
Nepumuk
Hallo,
schütz doch die Zellen einfach. Dann kann keiner was dran ändern.
Gruß
Nepumuk
AW: zuverlässiger undo bei change-ereignis
28.08.2010 11:46:21
hotzi
hallo nepumuk
schütz doch die Zellen einfach. Dann kann keiner was dran ändern.
der ansatz hilft mir nicht weiter, weil später tatsächlich der fall eintritt, dass eine änderung zugelassen werden soll.
gruß klaus
AW: zuverlässiger undo bei change-ereignis
28.08.2010 11:50:19
Ramses
Hallo
"...weil später tatsächlich der fall eintritt, dass eine änderung zugelassen werden soll...."
Davon hast du aber bisher nichts gesagt.
Und unter welcher bedingung dürfen Änderungen durchgeführt werden ?
Gruss Rainer
Anzeige
AW: zuverlässiger undo bei change-ereignis
28.08.2010 11:58:45
hotzi
hallo rainer,
Und unter welcher bedingung dürfen Änderungen durchgeführt werden ?
If IsNumeric(Target) then "mach was"
grüße klaus
AW: zuverlässiger undo bei change-ereignis
28.08.2010 12:00:50
Ramses
Hallo
"...If IsNumeric(Target) then "mach was"..."
Das ist doch Quark.
Daten - Gültigkeit - Dezimal
Fertig,... und das ganze ohne VBA.
Danach kannst du das Change Ereignis auslesen aus dieser Zelle und dein Makro weiterstarten
Gruss Rainer
AW: zuverlässiger undo bei change-ereignis
28.08.2010 12:06:59
hotzi
hallo rainer,
es gibt auch noch andere bedingungen; kurzum mir ist geholfen, wenn ich mit dem change-ereignis einen zuverlässigen undo habe. zaleneingaben/änderungen in einer anderen spalte sollen z.b. nicht größer sein als in der nächst folgenden:

If Target > Target.Offset(0, 1) Then
grüße klaus
Anzeige
AW: zuverlässiger undo bei change-ereignis
28.08.2010 14:54:31
Ramses
Hallo
"...es gibt auch noch andere bedingungen..."
Da haben wir es wieder mal.
Dann definiere doch mal was du tatsächlich brauchst. Mit jeder neuen Anforderung ist die alte Lösung meistens hinfällig und es muss wieder was neues gemacht werden.
Das ist zwar Beschäftigungstherapie, keine sinnvolle Forumsarbeit.
Ein zuverlässiges UnDo gibt es nicht.
Gruss Rainer
AW: zuverlässiger undo bei change-ereignis
28.08.2010 15:55:35
hotzi
hallo rainer
versprochen: hier mein letzter versuch. mit den folg. code speichere ich mit vSelWert den inhalt der gerade selektierten zelle in die vari. vSelWert. diese ist in einem anderemn modul als
Public vSelWert as Variant deklariert
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
vSelWert = ActiveCell.Value
end Sub
das chance-ereignis soll nun beim eintreten bestimmter if-bedingungen diesen wert wieder zurückschreiben. das funktioniert bei mir aber nur wenn ich die zelle mit enter verlasse. wenn ich das mit dem mauszeiger mache wird dieser undo unterlaufen.
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("A1:R14")) Is Nothing Then
MsgBox "Kann nicht geändert werden!", 0, "Hinweis"
Target.value=vSelWert
end if
End Sub
warum das so ist, ist mir unklar. freue mich auf eine anwort
beste grüße
klaus
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige