【问题标题】:Looping cutting and pasting with vba on next avaialable row在下一个可用行上使用 vba 循环剪切和粘贴
【发布时间】:2021-05-04 05:23:34
【问题描述】:

我是 vba 新手,但我认为这是解决我的问题的最佳方法。我需要从多个工作表 L1:L7(400+) 复制特定范围的数据并将其粘贴到摘要工作表 L2:R2 上。我必须在粘贴数据时转置数据,并将每组新数据复制到下一个可用行。我看过很多视频和阅读文章,但似乎都没有提供完整的解决方案。

当我尝试创建一个循环并尝试让它到达下一行时,它不起作用。它似乎总是卡在同一个“范围(“L2”)。PasteSpecial Transpose:True”的地方。它从“ActiveSheet.Select”单独工作,因此仅适用于一张纸和一行。下面是我尝试的最后一个循环组合。

任何帮助将不胜感激!

Sub CopyData()
    
    Dim sheet As Worksheet
    
    For Each sheet In ThisWorkbook.Sheets
        If sheet.Name <> "Summary" Then
            ActiveSheet.Select
            Range("L1:L7").Copy
            Sheets("Summary").Select
            Range("L2").PasteSpecial Transpose:=True
        End If
    Next
End Sub

【问题讨论】:

标签: excel vba


【解决方案1】:

正如@BigBen 所评论的,你关于让它总是在 L2 上粘贴相同数据的问题源于:

  1. 忽略循环 sheet 并仅在 ActiveSheet 上工作
  2. 硬编码单元格引用而不使用动态 LastRow 引用

以下是修正这两项后的样子:

Sub CopyData()
    
    Dim sheet As Worksheet, nextRng As Range
    
    For Each sheet In ThisWorkbook.Sheets
        If sheet.Name <> "Summary" Then
            sheet.Range("L1:L7").Copy
            
            'Finding the next open range to paste the data
            With Sheets("Summary")
                Set nextRng = .Range("L" & .Rows(.UsedRange.Rows.Count + .UsedRange.Row).Row)
            End With
            
            nextRng.PasteSpecial Transpose:=True
        End If
    Next

End Sub

替代 NextRng 公式:

With Sheets("Summary")
    Set nextRng = .Cells(.Cells(.Rows.Count, 12).End(xlUp).Row + 1, 12)
End With

【讨论】:

  • 您的替代 NextRng 公式可以简单地 Set nextRng = .Cells(.Rows.Count, 12).End(xlUp).Offset(1, 0)
  • 非常感谢你们。 @Toddleson,这是救命的,我的 vlookup/Indirect 公式无法解决这个问题,因为它依赖于其他工作簿,太复杂了,然后我开始查看宏。我不能感谢你!我知道我可以在互联网上查看学习 VBA 的在线课程,但你有什么特别推荐的吗?再次感谢。无论您身在何处,祝您有美好的一天!
  • @Nessy 当我开始使用 VBA 时,通过使用 excel 中内置的宏记录器工具,我学到了很多东西。之后,我开始查找其他人如何编写代码以及复制技术和约定。现在,我主要看 MS Docs 并在这个网站上搜索讨论。
  • @Toddleson,太棒了!感谢您的提示!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-10-29
  • 1970-01-01
  • 1970-01-01
  • 2014-08-01
  • 1970-01-01
相关资源
最近更新 更多