Vba:如何插入带格式的行


您可以在 VBA 中使用以下语法来插入与其上方的行具有相同格式的行:

 Sub insertRowWithFormatting()

ActiveCell.Offset(1).EntireRow.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromRightOrAbove
ActiveCell.EntireRow.Copy
ActiveCell.Offset(1).EntireRow.PasteSpecial xlPasteFormats

Application.CutCopyMode = False

End Sub

此特定宏将在当前选定的单元格下方插入一行,其格式与当前选定行中的单元格完全相同。

注意Application.CutCopyMode = False行指定在执行宏后应禁用剪切和复制模式。

以下示例展示了如何在实践中使用此语法。

相关:如何使用 VBA 插入多行

示例:在 VBA 中插入带有格式的行

假设我们在 Excel 中有以下数据集,其中包含有关各种篮球运动员的信息:

假设我们想要在第 2 行下方插入一行,且格式完全相同。

我们可以创建以下宏来执行此操作:

 Sub insertRowWithFormatting()

ActiveCell.Offset(1).EntireRow.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromRightOrAbove
ActiveCell.EntireRow.Copy
ActiveCell.Offset(1).EntireRow.PasteSpecial xlPasteFormats

Application.CutCopyMode = False

End Sub

然后我们可以选择单元格A2并运行该宏。

当我们运行这个宏时,我们会收到以下输出:

请注意,我们插入的新行与第 2 行中的单元格具有完全相同的格式,包括单元格颜色和边框。

另请注意,现有数据集中的所有其他行都已被简单地下推。

其他资源

以下教程说明如何在 VBA 中执行其他常见任务:

VBA:如何查找最后使用的行
VBA:如何计算范围内的行数
VBA:如何计算使用的列数

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注