0

这是一个非常基本的问题,但我无法使用搜索功能找到答案。

我有一个worksheet包含值Total Settled DepositsSuccessful Deposits两者的值column B,但是值所在的行号会根据在值之间提交的信息而变化。

我想编写VBA可以执行此操作的代码:将 Total Settled Depositscell 和Successful Depositscell 之间的范围返回到新的worksheet.

例如,如果Total Settled Deposits位于单元格中B:12并且Successful Deposits在 中B:7,则返回范围中的值B7:P13。我希望在标题为 的新工作表中返回值abc

4

2 回答 2

0

试试这个:

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
于 2013-10-18T16:31:58.943 回答
0

您不需要 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 列空白。

于 2013-10-18T16:23:57.853 回答