Excel 如何制作一个按钮,将信息放置在不同的工作表中?
我正在尝试创建一个时间跟踪器,用于跟踪员工在任何给定任务上的时间。我想对它进行设置,使开始和停止时间的按钮位于第一张图纸上,而生成的实际数据位于下一张图纸上。我的代码是有效的,但它只是把数据和按钮放在同一张表中。以下是我所拥有的:Excel 如何制作一个按钮,将信息放置在不同的工作表中?,excel,vba,Excel,Vba,我正在尝试创建一个时间跟踪器,用于跟踪员工在任何给定任务上的时间。我想对它进行设置,使开始和停止时间的按钮位于第一张图纸上,而生成的实际数据位于下一张图纸上。我的代码是有效的,但它只是把数据和按钮放在同一张表中。以下是我所拥有的: Sub StartBooking() Dim lr As Long lr = Range("a" & Rows.Count).End(xlUp).Row Range("a" & lr + 1).Formula = "=now()" Range("b"
Sub StartBooking()
Dim lr As Long
lr = Range("a" & Rows.Count).End(xlUp).Row
Range("a" & lr + 1).Formula = "=now()"
Range("b" & lr + 1) = "Booking"
Range("c" & lr + 1) = "Start"
Range("a" & lr + 1).Select
Selection.Copy
Range("d" & lr + 1).Select
Selection.PasteSpecial Paste:=xlPasteValuesAndNumberFormats
End Sub
我知道这非常简单,所以让我添加一个免责声明。我对excel vba的任何知识都是完全自学的。我对编码还不熟悉(这是我的第一个项目),我觉得它很有趣,但我有点不知所措。请帮忙 默认情况下,数据放在
ActiveSheet
上。您需要显式调用要将数据放入其中的工作表。可以通过调用工作表的特定名称或工作表的索引位置来执行此操作。索引位置是图纸相对于其他图纸的当前位置
Sub StartBooking()
Dim lr As Long
lr = Range("a" & Rows.Count).End(xlUp).Row
Sheets(2).Range("a" & lr + 1).Formula = "=now()"
Sheets(2).Range("b" & lr + 1) = "Booking"
Sheets(2).Range("c" & lr + 1) = "Start"
Sheets(2).Range("a" & lr + 1).Select
Selection.Copy
Sheets(2).Range("d" & lr + 1).Select
Selection.PasteSpecial Paste:=xlPasteValuesAndNumberFormats
End Sub
您也可以使用类似于
Sheets(“数据表”)
的名称来调用工作表,谢谢您为我指明了正确的方向。它适用于前三种情况,但在复制时间戳以粘贴其值时,会给我一个400错误。我只需要去掉选择部分,以便复制粘贴的最终代码仅为sheets(2).range(“a”&lr+1).复制并粘贴值。再次感谢!