2014-12-28 94 views
-1

我有一個宏給我所有的假期基於一年我輸入單元格C2 和結果在Sheet1範圍(c5:c14) 我想要例如創建另一個宏,以便從2015年到2050年的所有假期,並複製所有結果在表3列A 當然結果必須是秩序,所以我得到列A的所有年份。基於Excel的Excel VBA複製和粘貼結果

你能幫助我請那個嗎?

謝謝

+0

您需要在您的問題中提供更多細節,包括您嘗試過的可重複的示例和代碼。請閱讀http://stackoverflow.com/help/how-to-ask,然後更新您的問題。 – tospig

回答

0

您有一個從C2讀取一年的宏,並將假期寫入C5:C14。你不會告訴我們這10個假期,所以沒人能幫到那裏。不過,我認爲這個宏會產生你想要的任何一年的範圍內2015年至2050年

拆分這個宏成兩個假日列表:

  • 功能Macro1它接受了一年作爲參數,並返回假期數組。
  • Sub Macro2從C2讀取一年,調用Macro1並將返回的數組寫入C5:C14。

根據需要調試Macro1Macro2。您現在擁有複製原始宏的代碼,但將假日生成代碼作爲可由新宏調用的子例程。基於以下

寫Macro3:

RowCrnt = 1 
For Year = 2015 to 2050 
    Holidays = Macro1(Year) 
    For InxHol = LBound(Holiday) to UBound(Holiday) 
    Cells(RowCrnt, 1).Value = Holidays(InxHol) 
    RowCrnt = RowCrnt + 1 
    Next 
Next 

我認爲這會給你你所追求的最小的努力。