VBA ungewollte Messagebox
26.07.2018 21:35:31
Lars
ich habe eine vermutlich kleines VBA Problem und hoffe, dass ihr mir dabei helfen könnt.
Ich habe eine VBA Anweisung erstellt, die beim Ändern gewisser Zelleinträge zum Einen die Werte in bestimmte Zellen auf dem Tabellenblatt Overview schreibt und zum Anderen das aktive Tabellenblatt auf Basis des Zelleintrags von D3 umbenennt.
Mit einer Fehlerroutine möchte ich den User informieren, wenn die vorgenommen Änderungen, insb. Von D3 nicht zulässig sind. D.h. es werden Sonderzeichen in D3 verwendet, die nicht beim Tabellenblattnamen berücksichtigt werden können. Dafür die Messagebox.
Der Fehler: Beim geschützten Blatt gibt er mir bei jeder Änderung einer ungeschützten Zelle eine MsgBox ohne Inhalt zurück, die nur mit OK bestätigt werden muss. Der Fehler tritt nicht beim ungeschützten Tabellenblatt auf.
Hier mein Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim PW As String
PW = "YUx3elfHnCmWM8nKdCWm"
Application.ScreenUpdating = False
On Error GoTo Error_Handling
ActiveWorkbook.Unprotect PW
Worksheets("Overview").Unprotect PW
If Target = Range("D3") Then Sheets("Overview").[D9] = Range("D3").Value
If Target = Range("D4") Then Sheets("Overview").[E9] = Range("D4").Value
If Target = Range("D13") Then Sheets("Overview").[G9] = Range("D15").Value
If Target = Range("AJ106") Then Sheets("Overview").[F9] = Range("AJ106").Value
If Target = Range("D3") Then ActiveSheet.Name = "QA - " & Range("D3").Value
ActiveWorkbook.Protect PW
Worksheets("Overview").Protect PW
Application.ScreenUpdating = True
Error_Handling:
MsgBox Err.Description
End Sub
https://www.herber.de/bbs/user/122937.xlsm
Woran kann es liegen?
Dankbare Grüße
Lars