我是一名vba初学者,我想知道如何处理代码。 我在列#34; C"中有id号。和" H"。列" H"中的值正在改变每一个小小。所以看起来如下:
我需要浏览专栏" H"如果值发生变化,我需要复制列中的行" c"并将它们粘贴到另一张工作表中值更改时需要新工作表。所以,它循环通过" H"遇到了88888,因此3x12345转到另一张,3x 22222转到另一张,2x33333转到另一张,依此类推。需要将更改上方的单元格复制到另一张表格中...
C H
12345
77777个
12345
77777个
12345
77777个
22222
88888个
22222
88888个
22222
88888个
33333
99999个
33333 99999
44444
99999个
44444
99999
当然,有一种方法可以做到这一点。我希望这很清楚。 我很感激你的帮助。
答案 0 :(得分:0)
这应该有效,祝你好运!
Sub YouShouldHavePostedAnAttemptFirst
dim c as Range
dim CtRows As Integer, SheetCtr as Integer
'Try to put your data on sheet 1 then create a new sheet so that it is the second sheet in the workbook.
SheetCtr = 2
ctrows = application.counta (sheets(SheetWithDataOnIt).Range("h:h"))
for each c in range(cells(1,8),cellS(ctrows,8))
c.offset(,-1). Copy Sheets(SheetCtr).Cells(rows.count, WhatEverColumnYouWant).end(xlup).offset(1,0)
if c.offset(1,) <> c then
Sheets.Add after:=Sheets(ActiveWorkbook.Sheets.Count)
SheetCtr = SheetCtr + 1
end if
next c
end sub