粘贴公式中的值

时间:2017-01-10 00:23:05

标签: excel-vba vba excel

好的,我知道如何正常地做到这一点,但我正在使用一些我不是特别熟悉的编码,而且我无法让它工作。此代码使用日期搜索所有工作表,并在“报表”选项卡上粘贴具有该日期的行。不幸的是,它粘贴的是公式而不是值。

For shtNum = 5 To Worksheets.Count

'Search Column a for date(s)

     With Sheets(shtNum).Columns(2)

      Set d = .Find(MyDate)

        If Not d Is Nothing Then

           firstAddress = d.Address

             Do

'Copy each Row where date is found to next empty Row on Summary sheet

                d.EntireRow.Copy Sheets("Reports").Range("A" & nxtRw)

                 nxtRw = nxtRw + 1

                Set d = .FindNext(d)

            Loop While Not d Is Nothing And d.Address <> firstAddress

        End If

     End With

 Next

此代码效果很好,但因为我不确定如何

d.EntireRow.Copy Sheets("Reports").Range("A" & nxtRw)

它做了什么,我不知道如何编辑代码并使其工作。

1 个答案:

答案 0 :(得分:4)

替换:

d.EntireRow.Copy Sheets("Reports").Range("A" & nxtRw)

使用:

d.EntireRow.Copy
Sheets("Reports").Range("A" & nxtRw).PasteSpecial Paste:=xlPasteValues