Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema MsgBox
BildScreenshot zu MsgBox MsgBox-Seite mit Beispielarbeitsmappe aufrufen

Vor überschreiben warnen die 2.

Thema: Vor überschreiben warnen die 2.
Excel-Version: 10.0 (Office XP)

Betrifft: Vor überschreiben warnen die 2.
von: Klaus
Geschrieben am: 17.02.2003 - 13:15:23

Ich möchte meine Zellen so schützen dass ich eine Meldung erhalte bei der ich gewarnt werde wenn ich sie überschreibe.

Habe folgenden Code erhalten. Er warnt mich aber auch wenn ich leere Zellen überschreibe.
Vielen Dank im vorraus. Speziell an Harald


Option Explicit ' Code geändert
Public OldValue As Variant
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Dim mld 'Code geändert
If Not IsEmpty(Target) Then
mld = MsgBox("Warnung, Sie haben einen Wert überschrieben", 17)
If mld = 2 Then
Application.EnableEvents = False
Target = OldValue
Application.EnableEvents = True 'Code geändert
End If
ElseIf Target = "" Then 'Code geändert
Exit Sub 'Code geändert
End If
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
If Not IsEmpty(Target) Then
OldValue = Target
End If
End Sub



  

Re: Vor überschreiben warnen die 2.
von: Steffen D
Geschrieben am: 17.02.2003 - 13:23:33

Hi,

probier mal hiermit:


Option Explicit ' Code geändert
Public OldValue As Variant
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Dim mld 'Code geändert
If OldValue <> "" Then
mld = MsgBox("Warnung, Sie haben einen Wert überschrieben", 17)
If mld = 2 Then
Application.EnableEvents = False
Target = OldValue
Application.EnableEvents = True 'Code geändert
End If
ElseIf Target = "" Then 'Code geändert
Exit Sub 'Code geändert
End If
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
If Not IsEmpty(Target) Then
OldValue = Target
Else
OldValue = ""
End If
End Sub

Gruß
Steffen D

  

Re: Vor überschreiben warnen die 2.
von: Martin Beck
Geschrieben am: 17.02.2003 - 13:55:01

Hallo Klaus,

der ursprünglich, von Harald noch modifizierte Code stammt von mir, ich habe ihn getestet und er funktioniert, zumindest unter XL97.

Frage: Sind die "leeren" Zellen, bei denen eine Warnung kommt, wirklich leer oder enthalten sie Formeln, die einen Leerstring zurückgeben?

Test das Ganze mal in einer leeren Mappe.

Gruß
Martin Beck