如何在左侧插入具有列格式和公式的列?

时间:2017-08-10 15:04:28

标签: excel vba excel-vba

类似于这两个问题:

Enter a new line and copy formula from cells above

excel vba insert row with formatting

我见过this question,但我认为它不能解决我的问题。

3 个答案:

答案 0 :(得分:0)

好吧,至少你已经做了一些研究,因此......我将展示大约一半的答案 - 格式

看看以下内容:

Option Explicit

Public Sub CopyFormatToTheLeft(lngColumnNumber As Long)

    If lngColumnNumber < 2 Then
        MsgBox "Nope!"
        Exit Sub
    End If

    Columns(lngColumnNumber).Copy
    Columns(lngColumnNumber - 1).PasteSpecial Paste:=xlPasteFormats
    Application.CutCopyMode = False
    Cells(1, 1).Select 'no selection - no fun

End Sub

Public Sub TestMe()

    CopyFormatToTheLeft 3

End Sub

您会将列C的格式转移到列B。要转移公式,请查看xlPaste的不同可能性。

答案 1 :(得分:-1)

如果你想插入这个应该诀窍,可能不是最干净的方式;)你可以根据需要更改Offset

Sub ColumnOffsetCopy()

Application.ScreenUpdating = False
Application.CutCopyMode = False

With ActiveSheet
    ActiveCell.EntireColumn.Insert
    ActiveCell.EntireColumn.Formula = ActiveCell.Offset(0, 1).EntireColumn.Formula
    ActiveCell.Offset(0, 1).EntireColumn.Copy: ActiveCell.EntireColumn.PasteSpecial xlPasteFormats
End With

Application.CutCopyMode = False
Application.ScreenUpdating = True

End Sub

答案 2 :(得分:-1)

我只是觉得我可以插入类似于插入行的列。以下是插入destSheet的第15列的代码:

df1[4,1]