|
本帖最后由 TTTTT 于 2012-3-11 11:10 编辑
你原来程序发生错误的原因简单分析如下:
因为你在B列已经输入了5,
Cells(Rows.Count, "B").End(xlUp)的缺省属性是B列数据最后行单元格的value——5
现在A6的target输入5以后,Target的缺省属性value——5
If Target = Cells(Rows.Count, "B").End(xlUp) Then——满足条件就执行程序
A6输入5,target的range属性就是A6,回车后Cells(Rows.Count, "A").End(xlUp)实际就是指A6,再加一个 .Offset(0, 1),指B6,
Destination:=Range(Target, Cells(Rows.Count, "A").End(xlUp).Offset(0, 1))实际就是指A6:B6——全部自动填充5
如果你一开始B列输入的是其它数字,如8
当A列输入8后也会产生一样的问题
If Target = Cells(Rows.Count, "B").End(xlUp) Then
改为
If Target .column= 2 Then
后就与A列不相干,只看B列了
target在B列,Cells(Rows.Count, "A").End(xlUp).Offset(0, 1)也是指B列
Destination:=Range(Target, Cells(Rows.Count, "A").End(xlUp).Offset(0, 1))指B列target的range位置到A列最后数据行对应的B列单元格位置全部填充target缺省value了
|
|