如果列a中的名称等于特定值,我有一张包含要复制到不同工作表的数据行的工作表。例如:Excel如果公式3
A | B | C
Name | Color | Amount
Sue | Blue | $400
Joe | Green | $1000
表苏需要把列B和C从苏的记录,它的工作表,如果列等于苏
表乔需要把B和C柱从乔的记录,它的工作表,如果列a等于乔
等等等等......
任何人都可以帮忙!?
如果列a中的名称等于特定值,我有一张包含要复制到不同工作表的数据行的工作表。例如:Excel如果公式3
A | B | C
Name | Color | Amount
Sue | Blue | $400
Joe | Green | $1000
表苏需要把列B和C从苏的记录,它的工作表,如果列等于苏
表乔需要把B和C柱从乔的记录,它的工作表,如果列a等于乔
等等等等......
任何人都可以帮忙!?
那么,如果你没有太多的数据,你可以用数组公式来做到这一点。
设置您的主表(假设它是Sheet1
)与命名范围。您的A2:A100
将其命名为Name
,B2:B100
,将其命名为Color
,并将其命名为Amount
。 (根据需要调整范围)
然后,在每个人的床单中,具有称为Name
,Color
和Amount
的标题行。当你到达数据结束
=INDEX(INDIRECT(A$1),SMALL(IF(INDIRECT($A$1)=MID(CELL("filename",A1),FIND("]",CELL("filename",A1))+1,255),ROW(INDIRECT($A$1))-ROW(Sheet1!A$2)+1),ROWS(Sheet1!$A$2:A2)))
裹IFERROR([formula],"")
隐藏#NUM
错误:然后你就可以用这个公式(带有CTRL + SHIFT + Enter输入)。
是的,但这并不妨碍这是一个很好的答案。尽管我会使用Aggregate而不是小型的,但是6个在另一个中是6个。 –
@ScottCraner是真的。当谈到“Aggregate”时,我仍然是一个年轻的Padawan。工作很有趣,但我同意这里有更好的答案。 – BruceWayne
谢谢,明天我会试试这个,并让你知道。不,这不是很多数据。也许30行(记录),只有10列。 –
http://sites.madrocketscientist.com/jerrybeaucaires-excelassistant/parse-functions/sheet1-to-sheets可能会感兴趣的。 – pnuts
正如链接所示,你不想用公式来做到这一点。你的公式需要是数组类型,太多的数据会导致计算时间变慢,甚至可能导致Excel崩溃。你会想在vba中编码。网上有很多关于如何做到这一点的例子。 –
@ScottCraner - ...好吧,喂。好点,虽然VB解决方案可能会更好,如果数据很多... – BruceWayne