Vba 如何防止仅对某些列或单元格在excel中复制/粘贴

Vba 如何防止仅对某些列或单元格在excel中复制/粘贴,vba,excel,apache-poi,Vba,Excel,Apache Poi,是否有办法防止Excel中某些列的复制/粘贴 这是一个潜在的解决方法,尽管它可能不令人满意;您可以使一个范围基本上不可选择,因此没有复制或粘贴工作,因为您实际上无法选择数据 Private Sub Worksheet_SelectionChange(ByVal Target As Range) Dim LockedRange As Range: Set LockedRange = Me.Range(Columns(1), Columns(3)) If Not Applicatio

是否有办法防止Excel中某些列的复制/粘贴

这是一个潜在的解决方法,尽管它可能不令人满意;您可以使一个范围基本上不可选择,因此没有复制或粘贴工作,因为您实际上无法选择数据

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Dim LockedRange As Range: Set LockedRange = Me.Range(Columns(1), Columns(3))
    If Not Application.Intersect(Target, LockedRange) Is Nothing Then
        Me.Range("D1").Select
    End If
End Sub

您可以阻止选择锁定的单元格。并锁定这些列。这是不够的,无论如何,可以进行复制/粘贴据我所知,保护机制是防止用户可靠地进行复制/粘贴的唯一方法。如果这对您来说还不够,那么我认为不可能实现您想要的。这是一个很好的方法,但是如果我在不可选择的列之前插入一列,那么初始列是可选择的。我认为列的范围应该与在标题中查找某个名称或标识该名称的内容相关。