Скопируйте весь столбец таблицы с формулами - PullRequest
1 голос
/ 17 апреля 2019

У меня есть таблица 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

1 Ответ

0 голосов
/ 17 апреля 2019

Я думаю, что мне удалось решить это с помощью:

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

после добавления столбца с помощью Установить NewCol = Tbl.ListColumns.Add (Position) , как в моем первом примере

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...