【问题标题】:Reach to the end of the existing data and add multiple column headers到达现有数据的末尾并添加多个列标题
【发布时间】:2021-08-25 20:44:57
【问题描述】:

我正在尝试在现有数据集的末尾添加多个列并添加多个列。以下是我现在正在工作的代码:-

Sub AddColumn()

Range("A1").Select
Selection.End(xlToRight).Select

ActiveCell.Offset(0, 1).Select

ActiveCell.FormulaR1C1 = "RFQ 1"

ActiveCell.Offset(0, 1).Select

ActiveCell.FormulaR1C1 = "RFQ 2"

ActiveCell.Offset(0, 1).Select

ActiveCell.FormulaR1C1 = "RFQ 3"

End Sub

但是,第一个问题是代码看起来像是修补工作,我无法找到任何更好的解决方案。其次,如果列标题中有任何意外的空白,那么整个事情最终可能会弄乱现有的数据集。那么,您能否为此提供更好的可行解决方案。 (抱歉,我对 VBA 环境非常陌生)。

【问题讨论】:

    标签: excel vba multiple-columns excel-365


    【解决方案1】:

    使用End(xlToLeft) 获取最后一列并使用OffsetResize 引用接下来的3 个单元格的单行代码:

    Sub AddColumn()
        Cells(1, Columns.Count).End(xlToLeft).Offset(,1).Resize(,3).Value = Array("RFQ 1", "RFQ 2", "RFQ 3")
    End Sub
    

    【讨论】:

    • 你好大本。非常感谢你......代码就像一个魅力。谢谢。
    • 您好 BigBen,感谢您提供的巨大帮助。但是,我现在陷入了一个新问题。因此,当我在 excel 中手动添加列时,宏正在按原样运行,但是每当宏本身添加列时,当我尝试通过宏对新添加的列进行过滤时,它会显示错误 1004。错误代码为“运行时错误'1004'范围类的自动筛选方法失败”。你能帮我吗?谢谢。
    • @EL - 你能问一个新问题吗?
    • 当然.. 谢谢.. 我会提供更多细节。
    猜你喜欢
    • 1970-01-01
    • 2021-11-17
    • 2019-04-12
    • 2018-07-27
    • 1970-01-01
    • 1970-01-01
    • 2012-03-19
    • 1970-01-01
    • 2021-08-13
    相关资源
    最近更新 更多