我得到了一張名爲Sheet1的表,其中包含通過公式操縱的數據。我需要一個特定範圍的數據,比如說A2到D63,只是按照價值複製在一張新紙上,即Sheet2。僅複製值而不是公式
Sheet1中的數據範圍是動態的,即每次都會改變,所以我需要該宏來處理這個問題。
我得到了一張名爲Sheet1的表,其中包含通過公式操縱的數據。我需要一個特定範圍的數據,比如說A2到D63,只是按照價值複製在一張新紙上,即Sheet2。僅複製值而不是公式
Sheet1中的數據範圍是動態的,即每次都會改變,所以我需要該宏來處理這個問題。
嘗試
Worksheets("Sheet1").Range("D63").value = .Range("A2").End(xlDown).Offset(0, 41).value
我不是很擅長VBA所以請原諒任何錯誤
我的要求是範圍是動態的。每當sheet1中的數據發生變化,即行數發生變化,我無法對其進行硬編碼。 – user3800604
我是有點過第一次,提供一些更新的代碼應該看起來更像預期的。回讀整個線程,聽起來不僅僅是數據,而是範圍本身在這裏可能是動態的。如果是這樣的話,那麼這個範圍實際上會重新塑造嗎?
下面的代碼的每個數據源發生變化時增加了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
末次
我添加了VBA代碼爲你因爲你正在尋求建立* MACRO *的幫助。但是,既然你要求VBA的幫助,那麼你需要向我們展示你所嘗試過的。 – L42