gpt4 book ai didi

excel - 将行插入 Excel 但保留其当前格式

转载 作者:行者123 更新时间:2023-12-02 19:06:19 25 4
gpt4 key购买 nike

我的 Excel 工作表中的特定单元格(假设为“A1:A5”)有一个Sum。通常,每当我在 "A1" 上手动插入一行时,总和就会扩展,因此新的范围是 "A1:A6"。现在,当我使用 VBA 在 "A1" 处插入一行时,我的总和来自 "A2:A6",而不是 "A1:A6" 。如何插入一行但基本上保留当前格式(以便总和自动扩展)?

我用于插入的代码:

 dest.Rows(index).Insert shift:=xlShiftDown
dest.Rows(index).PasteSpecial xlPasteValues

其中 dest 是我要展开的工作表。

编辑:

我尝试使用宏并使用该代码,但遗憾的是不起作用。

生成的代码:

Rows("167:167").Select
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove

我的新代码:

 dest.Rows(index).Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
dest.Rows(index).PasteSpecial xlPasteValues

这并没有改变结果。

编辑2:

我将提供一张图片来阐明我想要做什么:

What it looks like

每当我手动添加一行(右键单击第 152 行 -> 插入单元格)时,这个小表格就会展开,所有内容都会向下移动,所以让我们假设:

我在单元格 B,180 中有一个从 B:50 到 B:179 的 SUM,现在 SUM 位于单元格中B,181 并从 B:50 变为 B:180。此外,表格的格式用于新行(就表格而言,因此列 A:K 具有上面单元格的背景/边框。

当我使用我的代码时,它只是插入一个新的空白行,而不保留格式。

最佳答案

对我来说这有效:

Sub copyExpanded()

Dim rng As Range

Set rng = ActiveSheet.Range("A5")

rng.Offset(1).EntireRow.Insert
rng.EntireRow.Copy rng.Offset(1).EntireRow

End Sub

关于excel - 将行插入 Excel 但保留其当前格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51498567/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com