gpt4 book ai didi

excel - 如何从选择中清除超出命名范围复制和粘贴的值

转载 作者:行者123 更新时间:2023-12-04 20:28:03 25 4
gpt4 key购买 nike

我想将值条目限制在命名范围内。应清除在命名范围之外输入的所有内容。

Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)

If Intersect(Target, Range("Liczby")) Is Nothing Then
Application.EnableEvents = False
Target.ClearContents
Application.EnableEvents = True
End If

End Sub

不幸的是,Excel 还允许您通过执行复制/粘贴命令(鼠标、键盘)来填充单元格。我的代码应该清除在命名范围之外粘贴的所有内容。它应该只粘贴适合命名范围的部分值,并且不显示粘贴在命名范围之外的值(清除)。

例如,我在相邻单元格中选择包含整数 1、2、3、4 的行,并尝试将它们粘贴到右侧的两列。由于命名范围只有 4 列宽,它应该将值 1 和 2 粘贴到命名范围中,并且在超出命名范围时不显示值 3 和 4。

最佳答案

尝试目标中的每个单元格(如果我正确理解了问题)

Private Sub Worksheet_Change(ByVal Target As Range)
Dim Cel As Range
Application.EnableEvents = False
For Each Cel In Target.Cells
If Intersect(Cel, Range("Liczby")) Is Nothing Then
Cel.ClearContents
End If
Next
Application.EnableEvents = True
End Sub

关于excel - 如何从选择中清除超出命名范围复制和粘贴的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56201483/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com