Excelmacros用于自动input数据

我需要一个macros来帮助我在Excel中input数据。 基本上我想要工作sheet 1input数据, sheet 2input的数据。 Sheet 1将只有一行数据input,一旦该行被填满,你按回车。 该行将自动添加到工作表sheet 2的表中,并在工作sheet 1上清除该行。 现在您已准备好在sheet 2input另一个条目。

所以总结sheet 2将有多行input的数据, sheet 1将只有1行,因为它会在每次input后自动清除它的行。

是这样的事情吗? 如果你们可以给我发一些代码,那真的很有帮助,并且记住我以前从来没有用过VBA编程过。 提前致谢!!

在工作表1上放置一个button,然后把这个macros放到一个普通的代码模块中,并将其附加到你的button上。 假设你在row2中input值(row1是标题或类似的),那么这将传递row2数据到sheet2上的下一个空行:

 Sub Transfer() Rows(2).Copy Sheets("Sheet2").Range("A" & Rows.Count).End(xlUp).Offset(1) Rows(2).ClearContents End Sub 

我不完全确定用例,但是您是否考虑过使用Excel用户窗体。

input将是一个实际出现在用户面前的表单,它将收集input。 当他们点击inputbutton时,你可以有底层代码来更新主表,第2页。

http://www.excel-vba-easy.com/vba-userform-excel-vba.html

你也可以使用数据库表单。 设置你的数据库表,然后数据>表单(在2003年)

为了不必“点击”button,我build议看看这个function:

 Private Sub Worksheet_SelectionChange(ByVal Target As Range) End Sub 

每次当您的工作表中的东西已经改变,这个macros将运行。 您可能需要检查单元格A1中是否有数据,因为这个VBA可能在数据input到另一个表单后触发。