2014-07-03 94 views
1

我得到了一張名爲Sheet1的表,其中包含通過公式操縱的數據。我需要一個特定範圍的數據,比如說A2到D63,只是按照價值複製在一張新紙上,即Sheet2僅複製值而不是公式

Sheet1中的數據範圍是動態的,即每次都會改變,所以我需要該宏來處理這個問題。

+1

我添加了VBA代碼爲你因爲你正在尋求建立* MACRO *的幫助。但是,既然你要求VBA的幫助,那麼你需要向我們展示你所嘗試過的。 – L42

回答

0

我是有點過第一次,提供一些更新的代碼應該看起來更像預期的。回讀整個線程,聽起來不僅僅是數據,而是範圍本身在這裏可能是動態的。如果是這樣的話,那麼這個範圍實際上會重新塑造嗎?

下面的代碼的每個數據源發生變化時增加了3行源範圍 - 應寫入了「工作表Sheet1」工作表模塊

Private Sub Worksheet_Change(ByVal Target As range) 
    Static r As range 
    If r Is Nothing Then 
     Set r = Worksheets("Sheet1").range("A2:D63") 
     Else 
     Set r = Union(r, Worksheets("Sheet1").range(Cells(r.Row + r.Rows.Count, r.Column), _ 
     Cells(r.Row + r.Rows.Count + 2, r.Column + r.Columns.Count - 1)))  
    End If 
    r.select 
    If Not Application.Intersect(Target, r) Is Nothing Then 
     For Each Cell In Application.Intersect(Target, r) 
      Worksheets("Sheet2").Cells(Cell.Row, Cell.Column).Value = Cell.Value 
     Next Cell 
    End If 

末次

相關問題