Excel 不允许我粘贴

Excel 不允许我粘贴

这是我第一次在这里发帖。这是我的问题。我输入了一个自定义函数来计算彩色单元格的数量。

Function COUNTIFCOLOUR(Colour As Range, rng As Range) As Long
Application.Volatile

Dim NoCells As Long
Dim CellColour As Long
Dim rngCell As Range
CellColour = Colour.Interior.Color
For Each rngCell In rng
    If rngCell.Interior.Color = CellColour Then
        NoCells = NoCells + 1
    End If
Next
COUNTIFCOLOUR = NoCells
End Function

到目前为止一切顺利。为了在进行更改时自动计算,我使用了这个代码。

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
ActiveSheet.Calculate
End Sub

问题是,使用 ActiveSheet.Calculate 代码后,Excel 不允许我粘贴复制的内容,尽管我可以通过剪贴板进行粘贴。如果我删除 ActiveSheet.Calculate 代码,一切都会恢复正常,这意味着我可以按 Ctrl+C 和 Ctrl+V(或使用鼠标复制、粘贴)。

有人能帮我吗?请记住,我不知道如何编写代码。我在网上找到了所有现成的东西。我正在使用 Microsoft Office 2019。

答案1

没问题!

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
  Application.EnableEvents = False
  ActiveSheet.Calculate
  Application.EnableEvents = True
End Sub

如果您的电子表格运行缓慢,并且进行了大量不必要的计算,请尝试:

ActiveSheet.Cells(1, 1).Calculate

相关内容