非常基本的问题,但我无法使用搜索功能找到答案。
我有一个worksheet
,其中包含值Total Settled Deposits
和Successful Deposits
column B
,但值所在的行号会根据值之间提交的信息而变化。
我想编写VBA
代码来执行此操作:返回介于两者之间的范围,并将"总计"Settled Deposits
单元格和"Successful Deposits
单元格"包含在新worksheet
中。
例如,如果 Total Settled Deposits
位于单元格 B:12
中,而 Successful Deposits
位于 B:7
中,则返回范围 B7:P13
中的值。我希望在标题为 abc
的新工作表中返回的值。
你不需要VBA,只需这样做。添加名为abc的新工作表,在B1中添加以下公式:
=IF(AND(ROW()>=MATCH("Successful Deposits",Sheet1!B:B,0),ROW()<=MATCH("Total Settled Deposits",Sheet1!B:B,0)),Sheet1!B1,"")
然后向下拖动。 它将把所有B列留空,除了另一张纸上的匹配单元格。
试一试:
Sub Zero()
Set r1 = Range("B:B").Find(what:="Successful Deposits")
Set r2 = Range("B:B").Find(what:="Total Settled Deposits")
Set r3 = Range(r1, r2)
addy = r3.Address
Worksheets.Add
ActiveSheet.Name = "abc"
r3.Copy Range(addy)
End Sub