分享

excel如何制作一个vba按钮,点一下之后让sheet1里面的部份数据,自动保存到sheet2里面?

 wangyong670 2022-06-21 发布于新疆

    如果菜单栏没有“开发工具”选项卡,右击上方菜单栏空白处——自定义功能区,选中“开发工具”

    请点击输入图片描述

    开发工具里面,插入——ActiveX控件,选中按钮,在Excel上拖拽2个按钮

    请点击输入图片描述

    右击按钮,查看代码,可以打开VBE界面(右击按钮,选择属性,里面可以改按钮的显示内容,Caption属性)

Private Sub CommandButton1_Click()

    Sheet2.Range("A1").Value = Sheet1.Range("A10").Value    '将表1中的某个值保存到表2的示例

End Sub

Private Sub CommandButton2_Click()

    Sheet2.Range("A1").Value = ""    '清空Sheet1指定单元格的示例

End Sub

根据示例修改代码

追问

好的,基本实现了。
还有个问题,是Sheet1的A10保存至Sheet2后,不是一直保存到A1。是每点击一次保存,都不覆盖上次的保存。
比如:第一次保存位置为A1,此后的保存自动向下,A2/第二次保存,A3/第三次保存……不覆盖此前的保存。可以实现吗

追答

'获取某列最后一行有内容的行号的命令:
Dim nRow as Long
nRow= Range("A635535").End(xlUp).Row
'如果获取其他列,将A改成对应列号就行
它的下一行就是空的
将Sheet2.Range("A1")改为 Sheet2.Cells(nRow+1, 1) 或者 Sheet2.Range("A" & nRow+1)
这样就不会每次保存覆盖之前保存内容了。
【也可以上面获取nRow的时候直接+1,后面就不用加了】

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多