首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >宏复制/粘贴Excel表

宏复制/粘贴Excel表
EN

Stack Overflow用户
提问于 2015-01-27 11:20:40
回答 1查看 137关注 0票数 0

我有宏代码从输入复制和粘贴一个值列表,其中记录被输入到完成,标题是相同的。

代码语言:javascript
复制
Sub a()
Sheets("ITM").Range("A1:AD1000").Copy
Sheets("ISP").Range("A1").PasteSpecial xlValues
End Sub

这是工作的复制和粘贴,但我需要调整它,以考虑到现有的填充字段,以便旧的已完成的记录不超过书面。

样本数据:

信息技术管理:

用户输入数据

代码语言:javascript
复制
Header A   - Header B   -  Header C
  Ex          BY              TY

ISP

这将记录所有以前输入的数据,宏将将最新的ISP输入的数据添加到下一个可用行。

代码语言:javascript
复制
Request #        Header A    -      Header B    -  Header C
   1               XY                  TY              ER
   2               QW                  WE              EW
   3               EX                  BY              TY
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-01-27 11:35:50

Paste Special, values操作可以由不涉及剪贴板的直接传输代替,并且通常要快一些。“考虑到现有的填充字段”,我将认为这意味着您希望将新信息放入ISP工作表的第一个空白行,而不是覆盖以前的记录。

代码语言:javascript
复制
Sub a()
    With Sheets("ITM").Cells(1, 1).CurrentRegion
        With .Offset(1, 0).Resize(.Rows.Count - 1, 30)
            Sheets("ISP").Cells(Rows.Count, 1).End(xlUp) _
              .Offset(1, 1).Resize(.Rows.Count, .Columns.Count) = .Value
            Sheets("ISP").Cells(Rows.Count, 1).End(xlUp).Resize(.Rows.Count + 1, 1) _
              .DataSeries Rowcol:=xlColumns, Type:=xlLinear, Step:=1
        End With
    End With
End Sub

您没有提到任何列标题标签,所以我没有说明它们。如果您有不希望每次跨列的列标题标签,则数据范围可以向下偏移1行。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28169290

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档