Private Sub Worksheet_SelectionChange(ByVal Target As Range) For i = 1 To 100 If Cells(i, 1) <> "" Then If Cells(i, 1) < 3000 Or Cells(i, 1) > 200000 Then Cells(i, 2).Interior.Color = 200 Else Cells(i, 2).Interior.ColorIndex = none End If Else Cells(i, 2).Interior.ColorIndex = none End If Next End Sub 输入这段代码以后,在表一里面只能输入数据,但是无法复制粘贴单元格,请问是怎么回事呀?谢谢 你这段代码是不是写在下面的事件中? Private Sub Worksheet……………… 同意楼上,是工作表事件导致无法复制粘贴,因为你在做其它操作时触发了事件运行代码导致无法粘贴。拷贝后,点到其它单元格后,触发SelectionChange中其它动作,导致不能粘贴。 解决办法: 1、调出剪贴板,用剪贴板粘贴 2、win7系统装Excel 2013,我用13版没这问题,好像以前10版也没这问题了,当时没注意。 本帖最后由 22b 于 2014-6-4 23:50 编辑 哎呀 不好意思 忘记复制完整的 Private Sub Worksheet_SelectionChange(ByVal Target As Range) end sub 确实是写在这里面的 主要想实现某个单元格如果输入的数字不在范围内就改变单元格颜色,但是就无法在excel里面复制粘贴了。谢谢
如果只是这段代码那就有点问题了。 问题1这段要作啥?不合适!放在这个事件中处理不合适! Sub Worksheet_Change(ByVal Target as Range) 在这事件中处理会好点, 另外分析一下,是否在该范围内再处理 (谢谢啦 12楼的方法可用 问题解决啦 条件格式确实也是不错的选择)
|
|
来自: lwc5577 > 《电脑应用-EXCEL应用》