使用公式复制整个表列

问题描述 投票:1回答:1

我有一个Excel表,我正在滚动它的列以在正确的位置添加新列(按字母顺序排序)然后我想复制表中前一个(或后面)列的所有公式。我试过了:

Columns(x).Copy
ActiveSheet.Paste

但我无法让它发挥作用。基本上我有一个userForm用于输入新列的名称(Cost Center),然后滚动一些列以将其插入正确的位置,如下所示:

Dim CDCName As String
CDCName = txtCDC.Text

Dim Tbl As ListObject
Dim Col As ListColumn
Dim Position As Integer

For Each Col In Tbl.ListColumns
    If Col.Index > 5 And Col.Index < Tbl.ListColumns.Count - 3 Then
        If Col.Range(1, 0).Value > CDCName Then
            Position = Col.Index - 1
            Set NewCol = Tbl.ListColumns.Add(Position)
            Col.Range(1, -1).Value = CDCName
            Unload Me
            MsgBox "Cost Centre " & CDCName & " added to table"
            Exit For
        End If                
    End If
Next
excel vba
1个回答
0
投票

我想我设法使用以下方法解决它:

Tbl.ListColumns(Position - 1).Range.Copy Tbl.ListColumns(Position).Range

用我的第一个例子中的Set NewCol = Tbl.ListColumns.Add(Position)添加列之后

© www.soinside.com 2019 - 2024. All rights reserved.