Excel-从另一个工作表中的工作表复制某些行

Excel-从另一个工作表中的工作表复制某些行,excel,excel-2007,excel-formula,vba,Excel,Excel 2007,Excel Formula,Vba,我已经找到了解决这个问题的方法,但我不知道如何根据我的具体问题来调整它们。我以前从未写过marco或任何VBA脚本,因此请具体回答 我有一个Excel工作簿,其中一个工作表名为“食品”,另外四个工作表名为“零食选择”、“早餐选择”、“午餐选择”和“晚餐选择” “食品”工作表中的标题如下所示: 食物的热量。。。等类型 其中“类型”包含“早餐”“快餐”“午餐”“晚餐”或2+选项的组合 我希望根据“foods”工作表中“Type”字段的值,将整行内容复制到相应的“零食选择”、“早餐选择”、“午餐选择”

我已经找到了解决这个问题的方法,但我不知道如何根据我的具体问题来调整它们。我以前从未写过marco或任何VBA脚本,因此请具体回答

我有一个Excel工作簿,其中一个工作表名为“食品”,另外四个工作表名为“零食选择”、“早餐选择”、“午餐选择”和“晚餐选择”

“食品”工作表中的标题如下所示:

食物的热量。。。等类型

其中“类型”包含“早餐”“快餐”“午餐”“晚餐”或2+选项的组合

我希望根据“foods”工作表中“Type”字段的值,将整行内容复制到相应的“零食选择”、“早餐选择”、“午餐选择”和“晚餐选择”工作表中

例如,如果我在“foods”工作表中输入一个新行,其中“Type”字段为“零食/早餐”,我希望该行自动显示在“早餐选择”和“零食选择”工作表中。(如果方便的话,我可以删除斜杠或用另一个字符替换)

提前谢谢你

有食物的主桌(单张“食物”):

早餐桌:

在本表中:

A1:食物类型。为了与其他食物(午餐/谷物/早餐)搭配,应该以“*”开头和结尾:
*早餐*
,而不是
早餐
。也可以对公式进行修改

然后我们在“食物”单上寻找第一次“早餐”:

A3:

结果,将显示多个匹配行。如果不匹配,将显示一个空白单元格

然后我们匹配其他数据:

B2:

D2:将间接(“食品!B”和$A3)更改为间接(“食品!D”和$A3)),E表示E2等

第一行下方A列中的其他行(从A4向下复制):

如果不匹配,将显示一个空白单元格


我上传了一个电子表格示例到

,寻找excel公式,将多张工作表中的整行复制到一张工作表中。试图复制的行在第一列中有一个“x”

图纸的设置如下所示:

纵队 1 2 3 4 5 第1行销售优先权WHID序列SAT 2 X 1 FG 1.FG.01
3 1 FG 1.FG.01

有许多行、许多列和许多工作表

希望将第一列中的每个“X”拉到一张新的工作表


有什么帮助吗?

我以前从未写过marco或任何VBA脚本,因此请具体回答。
->将您的需求分解为几个步骤(用英语写下您的逻辑),然后学习如何在VBA中完成每个步骤,然后将它们放在一起。一些有帮助的VBA方法包括
用于每个后续循环
自动筛选
(可能)和
指令
。如果您开发了一些代码,并且遇到了问题,请在这里发布。如果我们有代码可以使用,我们可以提供更好的帮助。如果Excel 2003必须处理超过16K的行号,它的索引效率似乎会大大降低(并且数量会增加)。不幸的是,我将一个公式复制到了最后一行,即使删除了所有行,体积仍然保持不变。完成后,卷大小为17 KB,这不应成为争议的问题。新的Excel 2003工作表由于是一张空白工作表而占用11,5 KB。是的,我知道:-)正在等待我的雇主升级。欢迎使用Stack Overflow。如果你有不同的问题。
=IF(ISERROR(MATCH($A$1,Foods!A:A;0)),"",MATCH($A$1,Foods!A:A,0))
=IF(A3="","",INDIRECT("Foods!B"&$A3))
=IF(ISERROR(A3+MATCH($A$1,INDIRECT("Foods!A"&A3+1&":A60000"),0)),"",A3+MATCH($A$1,INDIRECT("Foods!A"&A3+1&":A60000"),0))