[英]How to copy column from one sheet to another if the condition is met in excel?
[英]Copy data from one sheet to another when condition is met dynamically
我想連續遍歷所有工作表,除了名為“摘要”和“計數”的工作表以根據條件提取數據(如果單元格值為“A”,在 D6)。 之后,它將復制某些單元格值(單元格 F3 處的日期)並將它們粘貼到“計數”工作表中。 我面臨的問題是我似乎無法將我想要的數據粘貼到“計數”工作表中。
謝謝你! 任何輸入/建議將不勝感激!
我的代碼是:
Private Sub CommandButton1_Click()
Dim sh As Worksheet
Dim erow As Long
For Each sh In ActiveWorkbook.Worksheets
Select Case sh.Name
Case Is = "Summary", "Count"
Case Else
If sh.[B10] = "Wash the whole vehicle" And sh.[D6].Value = "A" Then
sh.[F3].Copy
sh.Cells(11, 4).Copy
sh("Count").Activate
lastRowRpt = sh("Count").Range("A" & Rows.Count).End(xlUp).Row
sh("Count").Range("A" & lastRowRpt + 1).Select
ActiveSheet.Paste
End If
End Select
Next sh
End Sub
sh("Count")
不是有效的語法,而Worksheets("Count")
是
除此之外,您不需要Select
/ Activate
除 go 以外的任何東西,具有完全限定的范圍
如下:
Dim sh As Worksheet, shCount As Worksheet ' add 'shCount' as a worksheet variable
Set shCount = Worksheets("Count") ' set 'shCount' variable to worksheet "Count"
For Each sh In ActiveWorkbook.Worksheets
Select Case sh.Name
Case Is = "Summary", "Count"
Case Else
If sh.Range("D6").Value = "A" Then sh.Range("F3").Copy shCount.Cells(Rows.Count, 1).End(xlUp).Offset(1)
End Select
Next
如果您的代碼如上所示,我假設粘貼到工作表Count
的值是空白或除 `Range("F3") 之外的其他值。
你有兩個復制代碼行。
sh.[F3].Copy
sh.Cells(11, 4).Copy
如果您需要復制兩個值,請嘗試復制然后粘貼每個值。 或者,如果您只需要復制范圍F3
嘗試注釋掉第二個復制行( sh.Cells(11, 4).Copy
)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.