Excel – 如果第一个工作表的特定单元格中的文本是Y(或是),则将整行移动到下一个工作表中
我试图build立一个公式,其中工作表1是一个date,名称和最后一列的列表(一)是一个简单的Y或N(是或否)。
如果答案是Y(或是),那么我想整个行被复制到下一个工作表(工作表2),如果答案是N(或否),那么它不会进入下一个工作表。
这是可能的,如果是的话,我怎么能通过单元格公式(我不想改变srcip模块,如果可能的话)?
任何指导都会受到好评。
移动是在Excel中的两个步骤(即剪切粘贴),所以这不能用公式完成。
你可以看看
- 自动filter显示基本数据工作表中的所有Ylogging…然后您可以手动复制/粘贴它们
- 高级filter来显示甚至复制Ylogging,但在同一个工作表中
- 编写一个VBA程序(不是函数)为你做抽取工作,首先手动在每个logging中设置Y / N字段,然后按下一个移动logging的button; 你应该尽可能的捕获进入Y的事件到第3栏来自动启动移动程序,但我不会推荐它…如果用户不小心input了Y …
- 最后你可以在提取表上插入一个数组公式来显示Ylogging; 例:
表1
ABC 1 Index Info Flag 2 1 AY 3 2 BN 4 3 CN 5 4 DY
工作表2
- 将工作表1的标题复制到A1..A3中
- selectB1..B3并input公式
=IF(Sheet1!C2="Y",Sheet1!A2:C2)
- 按下Ctrl + Shift + Enter将其另存为数组公式
- 复制B1..B3下来
虽然不是很好,因为每个Nlogging都会得到FALSE FALSE FALSE
我个人更喜欢3)…button解决scheme
简单地把=标志,你想看看结果比去整行,拖动光标向下按回车。 而已。 认为:那就是TJ
我在Sheet1; A1单元格中input一些数据,即客户名称,然后使用这个公式= Sheet1!B1在sheet2的单元格B1中使用这个名称,现在我想从sheet2; B1到sheet3的“C1 “cel,从哪个公式可能是可能的,ples告诉
这不是最漂亮的解决scheme,但它工作,我在工作簿上使用它来logging收到的检查。 如果检查已过期,则该行在该行上移动,以使该行出现在下一张表格的顶部。 这是一个数组公式,所以所有的数据是连续的。
让我们使用上面的MikeD的数据示例并展开它:
ABCDE 1 Index Info Flag Index 2 Info 2 2 1 AY =If(C2="Y",A2,"") =If(C2="Y",B2,"") 3 2 BN =If(C3="Y",A3,"") =If(C3="Y",B3,"") 4 3 CN =If(C4="Y",A4,"") =If(C4="Y",B4,"") 5 4 DY =If(C5="Y",A5,"") =If(C5="Y",B5,"")
基本上,你要在你的数据右边添加一些列,检查列C是否等于“Y”,并一次复制第一行单元格。 所以我们最终得到的是:
ABCDE 1 Index Info Flag Index 2 Info 2 2 1 AY 1 A 3 2 BN 4 3 CN 5 4 DY 4 D
然后在单元格A1的Sheet2中input以下数组公式(不要忘记使用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单元格中input一个类似的数组公式:
=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,并隐藏那些讨厌的公式列:)。