我正在尝试设置一个公式,其中工作表 1 是日期、名称列表,最后一列 (I) 是简单的 Y 或 N(表示是或否)。
如果答案是 Y(或是),那么我希望将整行复制到下一个工作表(工作表 2)中,如果答案是 N(或否),那么它不会进入下一个工作表。
这有可能吗,如果可以,我怎么能通过单元格公式来做到这一点(如果可能的话,我不想更改 srcipt 模块)?
任何指导将不胜感激。
我正在尝试设置一个公式,其中工作表 1 是日期、名称列表,最后一列 (I) 是简单的 Y 或 N(表示是或否)。
如果答案是 Y(或是),那么我希望将整行复制到下一个工作表(工作表 2)中,如果答案是 N(或否),那么它不会进入下一个工作表。
这有可能吗,如果可以,我怎么能通过单元格公式来做到这一点(如果可能的话,我不想更改 srcipt 模块)?
任何指导将不胜感激。
移动是 Excel 中的一个两步过程(即剪切 - 粘贴),因此无法通过公式来完成。
你可以调查一下
表 1
A B C
1 Index Info Flag
2 1 A Y
3 2 B N
4 3 C N
5 4 D Y
表 2
=IF(Sheet1!C2="Y",Sheet1!A2:C2)
不过不是很好,因为每条 N 记录都会得到一个 FALSE FALSE FALSE
我个人更喜欢 3) ... 按钮解决方案
你可以做一个解决方法。
在原始工作表中创建另一个选项卡或表格,通过条件提取所有行。这可以通过嵌套在 IF 语句中的 VLOOKUP 来完成。(如果单元格 = YES,则 VLOOKUP 行的其余部分)。我很抱歉没有包括确切的公式,但在该部分很容易找到视频等。
在其他工作表上,使用 PowerQuery 查询原始工作表,并附加新表中的行。
只需在您想查看结果的地方输入 = 符号,然后转到整行并将光标向下拖动按 Enter。而已。看:那是TJ
这不是最漂亮的解决方案,但它确实有效,我在工作簿上使用它来记录收到的支票。如果支票是过时的,它会延续该行,以便该行出现在下一张纸的顶部。它是一个数组公式,所以所有数据都是连续的。
让我们使用上面 MikeD 的数据示例并对其进行扩展:
A B C D E
1 Index Info Flag Index 2 Info 2
2 1 A Y =If(C2="Y",A2,"") =If(C2="Y",B2,"")
3 2 B N =If(C3="Y",A3,"") =If(C3="Y",B3,"")
4 3 C N =If(C4="Y",A4,"") =If(C4="Y",B4,"")
5 4 D Y =If(C5="Y",A5,"") =If(C5="Y",B5,"")
基本上,您要在数据右侧添加列,以检查列 C 是否等于“Y”并一次复制一个单元格。所以我们最终得到的是:
A B C D E
1 Index Info Flag Index 2 Info 2
2 1 A Y 1 A
3 2 B N
4 3 C N
5 4 D Y 4 D
然后在单元格 A1 中的 Sheet2 上输入以下数组公式(不要忘记使用 Ctrl+Shift+Enter):
=IFERROR(INDEX(Sheet1!$D$1:$D$5,SMALL(IF(Sheet1!$D$1:$D$5<>"",ROW(Sheet1!$D$1:$D$5)),ROW(1:1))),"")
然后在单元格 B1 中输入一个类似的数组公式:
=IFERROR(INDEX(Sheet1!$E$1:$E$5,SMALL(IF(Sheet1!$E$1:$E$5<>"",ROW(Sheet1!$E$1:$E$5)),ROW(1:1))),"")
然后您可以突出显示 A1:B1 并将公式向下拖动到 A1:B5 ,您应该会看到:
Index 2 Info 2
1 A
4 D
然后您可以返回到 Sheet1 并隐藏那些看起来令人讨厌的公式列:)。
我在 Sheet1;s A1 单元格中输入了一些数据,即客户名称,我在 sheet2 的单元格 B1 中使用此名称使用此公式 =Sheet1!B1,现在我想将数据从 sheet2;B1 移动(传输为 CUT)到 sheet3 的“C1 “cel,从哪个公式可以得出,请告诉我