Excel 2010 宏 - 复制带有公式的单元格区域并仅粘贴值

Excel 2010 宏 - 复制带有公式的单元格区域并仅粘贴值

我想创建一个简单的宏,将工作表 2 上包含公式生成的信息的单元格区域复制到工作表 1 上的单元格区域。我只需要粘贴第 1 页上的值,而保留第 2 页上的公式。

我尝试了以下操作:

表格(“数据”)。范围(“A3:A16”)。复制
表格(“战斗”)。ActiveSheet.范围(“A3:A16”)。PasteSpecial xlPasteValues
表格(“数据”)。范围(“C3:C16”)。复制
工作表(“战斗”)。ActiveSheet.范围(“C3:C16”)。PasteSpecial xlPasteValues
表格("数据").范围("D3:D16").复制
表格(“战斗”)。ActiveSheet.Range(“D3:D16”)。PasteSpecial xlPasteValues
表格(“数据”)。范围(“E3:E16”)。复制
工作表(“战斗”)。ActiveSheet.Range(“P3:P16”)。PasteSpecial xlPasteValues
表格(“数据”)。范围(“F3:F16”)。复制
表格(“战斗”)。ActiveSheet.范围(“R3:R16”)。PasteSpecial xlPasteValues
表格(“数据”)。范围(“G3:G16”)。复制
表格(“战斗”)。ActiveSheet.Range(“Q3:Q16”)。PasteSpecial xlPasteValues
表格(“数据”)。范围(“H3:H16”)。复制
表格(“战斗”)。ActiveSheet.范围(“S3:S16”)。PasteSpecial xlPasteValues

它从单元格复制数据但不会粘​​贴到另一张表中。

如果有人知道我哪里错了,请告诉我!

答案1

如果您选择 VBA 路线,您最好避免复制/粘贴,因为它效率不高。

Sub CopyToCombat()

Dim shtData As Worksheet, shtCombat As Worksheet
Set shtData = Sheets("data")
Set shtCombat = Sheets("combat")

shtCombat.Range("A3:A16") = shtData.Range("A3:A16").Value
shtCombat.Range("C3:D16") = shtData.Range("C3:D16").Value
shtCombat.Range("P3:P16") = shtData.Range("E3:E16").Value
shtCombat.Range("R3:R16") = shtData.Range("F3:F16").Value
shtCombat.Range("Q3:Q16") = shtData.Range("G3:G16").Value
shtCombat.Range("S3:S16") = shtData.Range("H3:H16").Value

End Sub

相关内容