VBA InsertRow问题

时间:2018-10-18 14:28:13

标签: excel vba

我得到了以下代码来插入新行,并保持相同格式: 源代码:https://www.developpez.net/forums/d869670/logiciels/microsoft-office/excel/macros-vba-excel/ajout-ligne-gardant-mise-forme/

Sub Ajout_Ligne()
Application.ScreenUpdating = False
With Rows(ActiveCell.Row)
    .Insert
    .Copy
    .Offset(-1, 0).PasteSpecial Paste:=xlPasteFormats
End With
Application.CutCopyMode = False
End Sub

问题是,例如,它保持相同的颜色,但没有边界(下面的屏幕)

enter image description here

2 个答案:

答案 0 :(得分:0)

尝试插入复制的行。

Sub Ajout_Ligne()

    Application.ScreenUpdating = False
    With ActiveCell.entirerow
        .Copy
        .Insert Shift:=xlDown
    End With
    Application.ScreenUpdating = True

End Sub

答案 1 :(得分:0)

是这样吗?

Sub Macro()
    'Copy formatting from row 1, copy to last row
    '
        Rows("1:1").Select
        Selection.Copy
        Columns("A:A").Select
        Selection.SpecialCells(xlCellTypeBlanks).Select
        Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
            SkipBlanks:=False, Transpose:=False
    End Sub

我希望每个人都会说“他在使用select,大而无”,但是这么小的东西应该没什么大不了的。