受保护的工作表允许通过复制和粘贴来编辑单元格格式

我有一个受保护的工作表。 只有一些单元格是可编辑的,用户可以写入它们,但不能照常更改单元格格式。 如果他决定将数据从另一个工作表复制并粘贴到我的单元格中,则其他工作表的单元格格式将应用于我的单元格。 我希望我的单元格可以编辑值,但他们的单元格格式一定不能编辑! 我怎样才能做到这一点?

提前致谢!

马尔科

如果用户决定复制并粘贴格式受保护的单元格,我使用这个方法是为了只粘贴值:

 Private Sub Worksheet_Change(ByVal Target As Excel.Range) If Application.CutCopyMode = xlCopy Then Application.EnableEvents = False Application.Undo Target.PasteSpecial Paste:=xlPasteValues Application.EnableEvents = True End If End Sub 

它将任何粘贴删除到工作表中,并再次粘贴(只有值,没有格式)。

一种方法是使用worksheet_change事件来查看是否有任何单元格已经改变:

 Private Sub Worksheet_Change(ByVal Target As Range) If Target.Address = Range("J2").Address Then 'your code End If End Sub 

接下来将原始格式应用于已更改的单元格。