VBA电子表格。添加新行并将该行中的单元格复制到

时间:2017-03-16 19:03:55

标签: excel vba excel-vba

我是excel VBA的完全初学者,我一直在创建一份工作报告,其中包含从salesforce下载的excel电子表格列。列是(A)到(T),列(T)包含同一行中每个项目的注释。

我一直在每个项目下面插入一个新行,然后将列单元格(T1)拖到该行中,然后合并并居中该行。

然后我重复第3行(原始第2行)的过程并获取列单元格(T3)并在第3行项目下方插入新行并在下方拖动(T3)然后合并并居中该行。

重复此过程。 (我之前只为其他人手动完成了这一次,然后才意识到手动操作是荒谬的)我完全坚持为此编写一个宏。

我知道我需要:

  1. 将范围设置为活动工作表
  2. 启动While循环
  3. 插入新行
  4. 合并行(x)列A到T
  5. 中的单元格
  6. 将(第T列,第1行)复制到第2行,列单元格(A-T)
  7. 删除(第T列,第1行)
  8. 向下移动到下一个(列T,行x),直到没有剩下。
  9. 循环
  10. End Sub

    我知道我需要做什么。但我想不出正确的代码可以让我到达我需要去的地方。

    任何人都可以帮忙吗?

    下面添加了我到目前为止所编写的代码。

    这是我迄今为止所拥有的。它打破并继续一遍又一遍地合并相同的行(无限循环)。我猜它与ActiveSheet.Paste有关。有什么想法吗?

    Sub Addingrowsv1

    Do Until ActiveCell.Value = ""
        Rows("3:3").Select
        Range("C3").Activate
        Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
        Range("T2").Select Selection.Copy 
        Range("C3").Select
        ActiveSheet.Paste
        Range("C3:S3").Merge
    Loop
    End Sub
    

    谢谢你,吉姆

1 个答案:

答案 0 :(得分:0)

VBA非常善于操纵数据;所以你想要做的就是在VBA范围内。

首先,首先打开宏录制器并执行一对线。他们去查看录制的代码。

通常,您将获取录制的代码并对其进行自定义以进入循环。

录音时需要帮助吗?