Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
608to612
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
608to612
608to612
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Änderung abfangen, erst Abfrage ob überschreiben

Änderung abfangen, erst Abfrage ob überschreiben
10.05.2005 13:26:48
Stefan
Hallo Excelfreunde, ich schon wieder.
Benötige nochmal Eure Hilfe.
Ich möchte, daß wenn eine Zelle mit Inhalt überschrieben
wird, vorher eine MsgBox kommt "Möchten Sie den Inhalt wirklich
überschreiben ?".
Gibt es da irgenwie eine before-Anweisung oder so was ?
Danke im voraus.
Gruß Stefan

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Änderung abfangen, erst Abfrage ob überschreiben
10.05.2005 13:36:31
Peter
Servus,
so in etwa: (Alt F11, auf das entsprechende Tabellenblatt doppelklicken, Code kopieren)
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target = Offset Then Exit Sub
If MsgBox("Wollen Sie die Zelle wirklich überschreiben ?", vbYesNo) = vbYes Then
Target.ClearContents
End If
End Sub

MfG
Peter
AW: Änderung abfangen, erst Abfrage ob überschreiben
10.05.2005 13:50:27
Stefan
Hallo Peter, danke erstmal.
Jedoch kommt die Msgbox schon, wenn ich mit dem Cursor
auf eine Box mit Inhalt gehe. Es sollte erst kommen,
wenn man anfängt, den Inhalt zu verändern oder zu
überschreiben. Hast Du noch eine Idee ?
Lieben Dank.
Stefan
Anzeige
AW: Änderung abfangen, erst Abfrage ob überschreiben
10.05.2005 13:39:02
u_
Hallo,

Private Sub Worksheet_Change(ByVal Target As Range)
Dim mldg As Byte
On Error GoTo errHandler
Application.EnableEvents = False
mldg = MsgBox("Wirklich überschreiben?", vbYesNo)
If mldg = vbNo Then Application.Undo
errHandler:
Application.EnableEvents = True
End Sub

Gruß
AW: Änderung abfangen, erst Abfrage ob überschreiben
10.05.2005 14:03:30
Stefan
Hallo unbekannter,
danke, Deine Idee fand ich bis jetzt am besten.
Was jetzt noch gut wäre: die Box soll nicht kommen,
wenn die Zelle leer war und jetzt etwas eingegeben
wird. Nur wenn ein vorhandener Inhalt überschrieben
wird. Geht das ?
Danke und Gruß
Stefan
Anzeige
AW: Änderung abfangen, erst Abfrage ob überschreib
10.05.2005 14:22:48
Reinhard
Hallo
dann probiers mal so:
Dim leer As Boolean

Private Sub Worksheet_Change(ByVal Target As Range)
If Target = "" Then leer = True 'falls gelöscht wurde
If leer = True Then Exit Sub
Dim mldg As Byte
On Error GoTo errHandler
Application.EnableEvents = False
mldg = MsgBox("Wirklich überschreiben?", vbYesNo)
If mldg = vbNo Then Application.Undo
errHandler:
leer = False
Application.EnableEvents = True
End Sub


Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target = "" Then
leer = True
Else
leer = False
End If
MsgBox leer
End Sub

Gruß
Reinhard
Anzeige
AW: Änderung abfangen, erst Abfrage ob überschreiben
10.05.2005 14:33:06
u_
Hallo,

Private Sub Worksheet_Change(ByVal Target As Range)
Dim Mldg As Byte, neuerWert
On Error GoTo errHandler
neuerWert = Target
Application.EnableEvents = False
Application.Undo
If Target = "" Then
Target = neuerWert
Application.EnableEvents = True
Exit Sub
End If
Mldg = MsgBox("Wirklich überschreiben?", vbYesNo)
If Mldg = vbYes Then Target = neuerWert
errHandler:
Application.EnableEvents = True
End Sub

Gruß
AW: Änderung abfangen, erst Abfrage ob überschreiben
10.05.2005 15:32:37
Stefan
Yipp, genau das war´s.
Vielen Dank, war ja ne schwere Geburt.
Gruß Stefan
AW: Änderung abfangen, erst Abfrage ob überschreib
10.05.2005 13:50:05
Reinhard
Hallo Stefan,
hast zwar schon gute lösungen, aber ich schreib meinen trotzdem :-)

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Range("IV1") = "" Then Range("IV1") = "A1"
If MsgBox("wollen sie wirklich", 1) = 2 Then
Application.EnableEvents = False
Range(Range("IV1")).Select
Application.EnableEvents = True
Else
Range("IV1") = ActiveCell.Address(0, 0)
End If
End Sub

Gruß
Reinhard
Anzeige
AW: Änderung abfangen, erst Abfrage ob überschreib
10.05.2005 14:00:17
Stefan
Hallo Reinhard, danke auf für Deinen Beitrag.
Jedoch kommt die Box ja schon, wenn ich nur eine
Zelle mit der Maus anklicke. Es sollte erst eine
Abfrage kommen, wenn ein vorhandenenr Inhalt
überschrieben wird.
Gruß Stefan

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige