1

我找到了解决这个问题的方法,但我不知道如何根据我的具体问题定制它们。我以前从未写过 marco 或任何 VBA 脚本,所以请具体说明您的答案。

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

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

食物量 卡路里 ... ETC ... 类型

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

我希望根据“食物”工作表中“类型”字段的值,将整行复制到相应的“小吃选择”、“早餐选择”、“午餐选择”和“晚餐选择”工作表中。

例如,如果我在“食物”工作表中输入一个新行,其中“类型”字段为“小吃/早餐”,我希望该行自动出现在“早餐选择”和“小吃选择”工作表中。(如果这样更容易,我可以删除斜线或用另一个字符替换它)

先感谢您!

4

2 回答 2

3

主桌食物(表“食物”):

主餐桌上的食物(“食物”表)

早餐表:

早餐表

在此表中:

A1:食物种类。为了与其他食物(午餐/谷物/早餐)匹配组合,它应该以 '*': 开头和结尾:*breakfast*而不是breakfast. 也可以更改公式。

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

A3:

=IF(ISERROR(MATCH($A$1,Foods!A:A;0)),"",MATCH($A$1,Foods!A:A,0))

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

然后我们匹配其他数据:

B2:

=IF(A3="","",INDIRECT("Foods!B"&$A3))

D2:将 INDIRECT("Foods!B"&$A3)) 更改为 INDIRECT("Foods!D"&$A3)),将 E 更改为 E2 等。

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

=IF(ISERROR(A3+MATCH($A$1,INDIRECT("Foods!A"&A3+1&":A60000"),0)),"",A3+MATCH($A$1,INDIRECT("Foods!A"&A3+1&":A60000"),0))

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

我将电子表格示例上传到http://www.bumpclub.ee/~jyri_r/Excel/Type_of_food_on_another_sheet.xls

于 2012-10-31T21:16:28.450 回答
0

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

前任。

表是这样设置的:

列 1 2 3 4 5 行 1 卖出优先 WHID 序列 SAT 2 X 1 FG 1.FG.01
3 1 FG 1.FG.01

有很多行、很多列和很多张。

希望让第一列中的每个“X”都拉到新工作表中。

有什么帮助吗?

于 2013-06-06T14:35:31.773 回答