繁体   English   中英

从其他工作表复制VBA并粘贴为值

[英]VBA copy from other sheets and paste as values

我有一个宏,我从一些例子,从所有其他工作表复制值称为“摘要”。 值范围从A列到M,从第14行到结束。 我是vba的新手,无法弄清楚如何修改此代码,因此它只会粘贴值。

  Sub copy_info()
    Dim i As Long, j As Long, lastRow As Long
    Dim sh As Worksheet
    With Sheets("Summary")
    End With
    j = 14
    For Each sh In ActiveWorkbook.Sheets
    If sh.Name <> "Summary" Then
        lastRow = sh.Cells(sh.Rows.Count, "B").End(xlUp).Row
        For i = 14 To lastRow
            If sh.Range("H" & i) > 0 Then
                sh.Range("A" & i & ":M" & i).Copy     Destination:=Worksheets("Summary").Range("A" & j)
                Sheets("Summary").Range("M" & j) = sh.Name
                j = j + 1
            End If
        Next i
    End If
    Next sh
    Sheets("Summary").Columns("A:M").AutoFit
    End Sub

改变这一行:

sh.Range("A" & i & ":M" & i).Copy     Destination:=Worksheets("Summary").Range("A" & j)

到2行:

sh.Range("A" & i & ":M" & i).Copy     
Worksheets("Summary").Range("A" & j).PasteSpecial xlPasteValues

或者,你可以写

Worksheets("Summary").Range("A" & j ":M" & j).Value = sh.Range("A" & i & ":M" & i).Value

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM