excel 如何通过vba将sheet1中的操作写入到sheet2中

详细一点说:
就是我在sheet1里面按格式写好数据后,点击控件,sheet1表中指定区域就被加入sheet2的数据中,多次点击sheet1的控件,就在sheet2中顺序向下写入数据。
你可以将其中的关系想象中操作界面与数据库的关系。

请问如何实现?

要通过VBA把Sheet1工作表中的数据写入Sheet2工作表中,可以采用如下方法:

1、假如要把Sheet1工作表中A1单元格的数据写入Sheet2工作表的A1单元格中。

2、可以执行以下语句:

sub test()
    sheets("Sheet2").range("A1").Value=sheets("Sheet1").range("A1").Value
end sub

3、语句解释:range("A1")代表A1单元格,.Value代表是单元格的值属性。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-05-22
sub a()
[a1].copy iif([a1]="",[a1],sheets(2).[a65536].end(3).offset(1))
end sub

将表1的数据插入到SHEET2的A列。

追问

sheet是有表头啊什么的,我只要指定区域插入即可。
表1的指定区域我已经转成列表了,名字也命名好了。

还有,sheet2原来有数据的,这样不会影响sheet2的数据吗?

追答

你的要求不明确,全是大范围,没一个准确的描述。。。我只有随便举例写了一个。

追问

哦,真不好意思。那我尽量写准确一点


现在就是想在表1中将数据行填充进去以后,通过插入的按钮将数据航增加到表2的最后。



如图,这是表1的数据,当我填好后,点击上面的按钮,这一部分数据就被复制到表2 中,点击一下,就在表2中向下复制一次,达到数据积累的效果。


另外,我表1和表2的格式是一样的,只需要在表2的最下方插入表1的这些数据行就行了

追答sub a()
range("b4:O"& [b65536].end(3).row).copy sheets(2).[B65536].end(3).offset(1)
end sub

 把中间那名代码,复制到你的控件代码中。

追问

我对VBA不懂,请问上述语句中,sheets(2) 是怎么定位的?

.....其他方面没有发现问题。

还有能否,点击之后弹出“数据已写入[XXX工作表]”

追答

sheets(2) ,代表第2个表,在工作表标签上,从左往右数。
如果是sheets("sheet2"),则特指工作表名为"sheet2”的表。
要加弹出消息框。可以加语句。
msgbox "数据已写入……"

引号内为你要弹出的内容。

本回答被提问者采纳
第2个回答  2015-09-30
具体要看你的是什么操作,如果是筛选,合并之类的操作,可以通过宏录制,直接录制出的操作代码,将代码中的sheet1改成sheet2!!!具体需要什么操作,你要说一下才能给你代码

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网