我試圖複製和粘貼A1中單元格更改時的值範圍。VBA在特殊單元格更改後複製粘貼範圍
例如,如果A1中的單元格(來自公式)更改爲「2016.10」,它將在A2:A14中查找相同的值,找到它並複製範圍B12:E12(也來自公式)並將它們粘貼爲值。或者,如果A1更改爲「2016.11」,則複製粘貼B13:E13的值。
有沒有辦法用VBA做到這一點?
在先進的感謝。
External Data is coming from another Sheet
我試圖複製和粘貼A1中單元格更改時的值範圍。VBA在特殊單元格更改後複製粘貼範圍
例如,如果A1中的單元格(來自公式)更改爲「2016.10」,它將在A2:A14中查找相同的值,找到它並複製範圍B12:E12(也來自公式)並將它們粘貼爲值。或者,如果A1更改爲「2016.11」,則複製粘貼B13:E13的值。
有沒有辦法用VBA做到這一點?
在先進的感謝。
External Data is coming from another Sheet
最後,我找到了解決這個問題的方法。下面是我用它來幫助我的代碼:
Sub PasteValues()
Dim RowData As Long, i As Long
Set Data = Range("A2:A108")
RowData = Data.Rows.Count
For i = 1 To RowData
If Data(i, 1) = Cells(1, 1) Then
Range(Cells(i + 1, 2), Cells(i + 1, 16)).Copy
Range(Cells(i + 1, 2), Cells(i + 1, 16)).PasteSpecial xlPasteValues,
Operation:=xlNone, SkipBlanks:=False, Transpose:=False
End If
Next i
Application.CutCopyMode = False
End Sub
幹得好! (1) –
您正在尋找這樣的事情?
Sub SelectiveCopyPaste()
Dim WB As Workbook, Data1 As Range, Data2 As Range, RowData As Long, i As Long, FilePath As String
FilePath = "C:\Program Files\Microsoft Office\Office\RS.xlsb" 'Add your own file path
Set WB = Workbooks.Add(FilePath)
Set Data1 = Range("A2:A14") 'Change this accordingly
'Change this accordingly
Set Data2 = WB.Worksheets("RS_Summary").Range("Set the range you want to copy here")
RowData = Data1.Rows.Count
For i = 1 To RowData
If Data(i, 1) = Cells(1, 1) Then
Data2(i, 1).Copy Data1(i, 2) 'Change this too
Exit For
End If
Next
End Sub
年線是不是太清楚,但如果我理解分辯你爲什麼不使用這個公式爲每個小區(取決於有多少條記錄)要= IF($ A3 = $ A $ 1;「年公式」;「」) – Fabrizio
嗨法布里齊奧,感謝您的回覆。單元格B3:E4中的公式正在計算來自外部源的數據。外部數據每週更新一次,僅顯示當前日曆周(A1)的值。我的目標是記錄過去的日曆周的價值。 – Toli