在Excel中使用下拉过滤器菜单时,如何*将某些行从一个工作表重新定位到另一个工作表?

时间:2016-11-04 14:57:23

标签: excel vba excel-vba filter macros

我确实有一个问题听起来很简单,但是当你不习惯编写Excel宏时,这个问题很难解决。

Sheet1上,列出了几个任务(ABCD)。为每个任务分配了一个状态,指出任务是Not startedIn progress还是CompletedSheet 1

在Sheet2上,有一个Completed任务列表。

enter image description here

现在,我想编写一个执行以下操作的宏:每当我将Sheet1上的某个任务的状态从Not startedIn progress更改为Completed时(例如,对于任务D),

Sheet 1 with drop down menu

我希望Excel以下列方式从<{1}}重新定位该行<{1}}:

  1. 我希望Excel从Sheet1 删除Sheet2
  2. 然后,Excel应将第5行移至行Sheet1并将3行移至4
  3. 中的第2
  4. 现在,Excel应将已移除的行(3)从Sheet2复制到5的空行Sheet1
  5. 我已经四处寻找各种解决方案,但我发现的只是some VBA-code that did not fit to my specific problem,无论我多么努力地适应它。它已被用于为德语版的Excel编程宏。

    • 2 = Sheet2
    • Zeile = Row
    • erledigt = completed

      erledigte Projekte

    我可以,理解那些代码,但我从未真正学过Visual Basic。因此,遗憾的是,我不知道如何修改该代码以使其工作。我知道这是一个(或多或少)简单的问题,但我不知道如何解决它。因此,我在寻求你的帮助。

1 个答案:

答案 0 :(得分:0)

我认为首先,如果你用一个数字(1,2,3,4 ......)而不是一个字母(A,B,C ......)命名你的任务,那么修复它会更容易问题

然后,您可以比较Cell(k,1)的值,其中k是包含新完成任务的行,以及Sheet 2中其他已完成任务的值。

这是我的2美分。