我发现了许多在VBA中复制工作表或用值替换公式的示例。 我想要做的是复制整个工作表,但在新工作表上,每个单元格都会返回原始工作表。 因此,在新工作表的单元格A1中,它只会包含公式" =' Sheet1'!A1"
有一种简单的方法吗? 感谢
P.S。我需要它是一个宏,因为我需要能够在特定的工作表上运行它,将该工作表中的所有单元格复制到一个新的单元格中,并不总是来自" Sheet1"
答案 0 :(得分:1)
你几乎在你的问题中给出了答案:
sheet2.range("A1:F50").formula = ='Sheet1'!A1"
答案 1 :(得分:1)
如果你想避免剪贴板,我可以建议R1C1公式格式:
Sub fillsheet()
Dim ows As Worksheet
Dim tws As Worksheet
Dim rng As Range
Set ows = Worksheets("Sheet1")
Set tws = Worksheets("Sheet2")
Set rng = ows.UsedRange
tws.Range(rng.Address()).FormulaR1C1 = "='" & ows.Name & "'!RC"
End Sub