Excel 将数据从一个工作表复制到另一个工作表,并将公式作为值

Excel 将数据从一个工作表复制到另一个工作表,并将公式作为值,excel,vba,copy,Excel,Vba,Copy,我正在处理一个宏,它可以帮助我在一定条件下将Excel中的数据从一个工作表复制到另一个工作表。问题是有些行包含公式,而我需要这些值 尝试此操作,它将复制并删除公式,保留值: Sub copier() Dim ws1 As Worksheet, ws2 As Worksheet, src As Range, dest As Range, i As Integer Set ws1 = Worksheets("Workload - Charge de travail") Set

我正在处理一个宏,它可以帮助我在一定条件下将Excel中的数据从一个工作表复制到另一个工作表。问题是有些行包含公式,而我需要这些值

尝试此操作,它将复制并删除公式,保留值:

Sub copier()
    Dim ws1 As Worksheet, ws2 As Worksheet, src As Range, dest As Range, i As Integer
    Set ws1 = Worksheets("Workload - Charge de travail")
    Set ws2 = Worksheets("Sheet1")

    For i = 2 To ws1.UsedRange.Rows.Count
        Set src = ws1.Range("A" & i & ":AG" & i)
        Set dest = ws2.Range("A" & i & ":AG" & i)

       ' ... you can add some checking here to check if the condition is met on the src range...

       src.Copy Destination:=dest
       dest.Value = dest.Value
    Next i
End Sub

只需使用
.copy
.pasteValues
,它就会粘贴到值中

exsample:

Thisworkbook.sheets("Sheet1").Range("A1").copy

Thisworkbook.sheets("Sheet2").Range("A1").PasteSpecial xlPasteValues

问题是什么还不清楚。如果您发布您现有的代码并更准确地解释一下您想要做什么,这会有所帮助。我从下面的代码开始,我需要逐行将数据从第一张工作表(工作负载-分娩费用)复制到Destinon工作表(工作表1)
Sub copier()工作表(“工作负载-分娩费用”)。范围(“A2:AG2”).Copy Destination:=纸张(“Sheet1”).Range(“A2”)End Sub
谢谢,但它仅用于一种排列。第一张纸张包含10列,与第二张相同,我在第4列中有一个下拉列表(complete/in process/cancel),我需要将第一张图纸中的所有数据复制到第二张图纸中,同时Clunn编号4显示完整(下拉列表)@RiadhSaïd我修改了代码以处理第一张图纸中的所有行(易于修改为10行)。下拉列表也将被复制。但是,如果验证范围不存在,则它可能为空。源工作表中的下拉列表是如何填写的?谢谢,我已经更改了,我可以在其中设置下拉列表的条件(我必须只复制下拉列表显示的行(完成))