ListRows.Add,不将所有公式复制到新行

时间:2018-10-16 23:38:46

标签: excel vba

我有一个带有子例程的表,可在底部添加新行。 添加新行时,它不会仅复制2列的公式。所有其他公式都将复制到新行,而不会出现问题。 我正在打电话给ListRows.Add 我已经在多个项目中使用了它,但都没有失败,但无法弄清楚为什么只有两列不会将公式复制到新行。

表格详细信息: 名称:tblFlights 栏数:103 具有以下公式的保护柱:A,P-S,U,AI-AM,AP-AW,AZ-BA,BG-BQ,BS-CB,CD-CG,CI-CO。 未保护的列(用于数据输入):B-O,W-X,CY。

在新添加的行(在底部)中,列P&R公式不会复制。 具有公式的所有其他列都可以复制。

我还注意到在“ P”列上“保护”没有被复制。 R列“保护”就可以了。

这是仅有的两列与ListRows有关的问题。添加

当我手动执行下面的Insert-> Table Row时,会发生相同的问题。当我手动执行上面的Insert-> Table Row时,也会发生相同的问题。

任何帮助或想法将不胜感激。

克里斯

Sub btnInsertBottom()
Call SheetUnLock
Application.ScreenUpdating = False

Dim Tbl As ListObject
Dim NewRow As ListRow

Set Tbl = Range("tblFlights").ListObject
Set NewRow = Tbl.ListRows.Add(AlwaysInsert:=True)

Range("tblFlights[[#Headers],[Date (mm/dd/yy)]]").Select
Call btnGotoBottom

Application.ScreenUpdating = True
Call SheetLock
End Sub

1 个答案:

答案 0 :(得分:0)

感谢大家的帮助,转换为范围,然后再返回就没用了,所以我创建了另一列作为“ chillin”的建议,并更改了引用该列的公式,所有操作均按预期进行。感谢回应