我發現了很多用於複製VBA中的工作表或使用值替換公式的示例。 我想要複製整個工作表,但是新的工作表中,每個單元都指向它的原始。 因此,在新工作表的單元格A1中,它只需要公式「='Sheet1'!A1」在Excel中複製工作表中的宏(通過引用每個單元格)
是否有一種簡單的方法可以執行此操作? 謝謝
P.S.我需要它是一個宏,因爲我需要能夠在特定的工作表上運行它,將該表中的所有單元格複製到新的單元格中,而不是始終從「Sheet1」
我發現了很多用於複製VBA中的工作表或使用值替換公式的示例。 我想要複製整個工作表,但是新的工作表中,每個單元都指向它的原始。 因此,在新工作表的單元格A1中,它只需要公式「='Sheet1'!A1」在Excel中複製工作表中的宏(通過引用每個單元格)
是否有一種簡單的方法可以執行此操作? 謝謝
P.S.我需要它是一個宏,因爲我需要能夠在特定的工作表上運行它,將該表中的所有單元格複製到新的單元格中,而不是始終從「Sheet1」
如果你想避免可能我建議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
再次感謝斯科特。我選擇了這個,因爲我需要爲工作表使用變量,但是@ iDevlop的解決方案非常好,也很簡單 – Dave
您幾乎給出了答案你的問題:
sheet2.range("A1:F50").formula = ='Sheet1'!A1"
是,複製所需的細胞,然後粘貼特殊。有一個選項可以粘貼鏈接。 –
看到這裏:https://msdn.microsoft.com/en-us/library/office/ff835858.aspx?f=255&MSPPError=-2147217396 –
嗨斯科特,謝謝,這可能是我需要的。大概有一種方法可以通過VBA做到這一點? – Dave