在Excel VBA中保留公式时,从范围中移动值

我试图制作一个macros,将值从一个范围移动到另一个,同时保留范围内的公式。

到目前为止,我有这样的:

Sub change_fiscal_year() Sheets("1 Income statement").Range("E1:E23").Value = Sheets("1 Income statement").Range("D1:D23").Value End Sub 

它的工作原理,但它copypastes的值,而不是移动它们,所以公式不保留。 我怎样才能解决这个问题?

尝试这个:

 Sheets("1 Income statement").Range("E1:E23").Formula = Sheets("1 Income statement").Range("D1:D23").Formula