Ich habe eine Tabelle, in der in die Spalten C, D, und E und in den Zeilen 12 bis 42 Uhrzeiten eingetragen werden sollen. Sie sind durch Formeln schon mit einem Zellverweis auf eine andere Zelle vorbelegt. Dieser kann durch den Nutzer überschrieben werden. Wenn er die Zellinhalt aber löscht, soll wieder die ursprüngliche Formel eingetragen werden.
Ich habe das über VBA folgendermaßen gelöst:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
For b = 12 To 42
If Range("C" & b) = "" Then Range("C" & b) = "=V" & b
On Error GoTo Ende
Next b
For e = 12 To 42
If Range("D" & e) = "" Then Range("D" & e) = "=W" & e
On Error GoTo Ende
Next e
For p = 12 To 42
If Range("E" & p) = "" Then Range("E" & p) = "=X" & p
On Error GoTo Ende
Next p
Ende:
End Sub
Dies scheint aber enorm Rechenleistung zu binden, da der Cursor nur seeeeehr schleppend nach einer Eingabe weiterläuft. Könnte man dies etwas "schlanker" mit weniger Rechenbelastung lösen?
Bin für jeglichen Hinweis dankbar.
Viele Grüße
Harald Holmer