首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VBA >

为什么微软要这样设计阿?Excel VBA中怎样操作一个非Active Sheet啊该如何处理

2012-02-25 
为什么微软要这样设计阿?Excel VBA中怎样操作一个非Active Sheet啊比如,想把一个Sheet中的某行拷贝到另一

为什么微软要这样设计阿?Excel VBA中怎样操作一个非Active Sheet啊
比如,想把一个Sheet中的某行拷贝到另一个Sheet中。
但Select时出错。

Select操作好像只能对ActiveSheet的,为什么微软要这样设计VBA啊?
因为每个Sheet的Active/DeActive中已经有很复杂的代码了,如果单单为了拷贝而反复Active这些Sheet,或者Active/DeActive执行其他Sheet的Active操作,在会让程序乱掉的。

总而言之,有没有不Active某个Sheet,就选择这个Sheet上某行的方法阿?
或者,不Active某个Sheet,就在这个Sheet上添加/删除指定的行的方法也可以阿。

谢谢啦!


[解决办法]
用Copy函数
sub test
thisworkbook(1).sheets(1).range( "A1:IV1 ").copy _
thisworkbook(1).sheets(2).range( "A1 ")
end sub
自已运行一下代码
功能是把本工作薄的表1里的第一行的数据复制到
表2里的第一行
[解决办法]
抱歉 刚才没看清需求。修改了一下代码。插入后再粘贴。

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

Rows(3).Copy
Sheets( "Sheet2 ").Rows( "2 ").Insert Shift:=xlDown
ActiveSheet.Paste Destination:=Worksheets( "Sheet2 ").Rows(2)

End Sub

热点排行