在表格Excel VBA中插入新列

我遇到了我正在构build的工作表上的一些问题。 我想插入一个列在表中的特定位置,然后设置标题。

我search了一下,发现(某些版本)下面的代码:

ActiveSheet.Columns(2).Insert 

这工作插入列,但我不知道如何改变表的标题之后。

此外,我以前在这里提供了一些build议,将列添加到表的末尾并命名它们。

代码是:

 Dim oSh As Worksheet Set oSh = ActiveSheet Dim oLc As ListColumn Set oLc = oSh.ListObjects("PropTable").ListColumns.Add oLc.Name = "XYZ" 

我试着用各种方法把这两种方法结合起来,但我没有任何运气。 有没有办法修改第二块代码,以便在特定的位置插入一列,而不是只添加一列?

谢谢。

-Sean

  Dim Table As ListObject Set Table = Sheet1.ListObjects("Table1") Table.ListColumns.Add 2 Table.HeaderRowRange(2) = "New header" 

可以使用相同的代码行将列添加到特定位置的表中并命名。

 Table.ListColumns.Add(2).Name = "New Header" 

这将在表格的第二列左边添加一列,并将其命名为New Header。 您可以通过在您知道其名称的左侧添加一列来使代码dynamic化。 这样,就没有必要指定新列固定位置的整数值。

 Dim newColNum as Integer newColNum = Range("Table[Column Name]").Column Table.ListColumns.Add(newColNum).Name = "New Header" 

[列名称]是表格中要插入新列的列的名称。 它可以在表中的任何位置,并且可以将它的值作为整数传递给Add。