我刚开始使用Excel。我有一个表1,它显示了产品的数量与不同的日期。我需要将数量从表1更新到表2。这可以使用Vlookup来实现。有人可以帮助我了解如何做到这一点。
提前感谢!
| 产品(表1)|2023年1月2日|2023年3月1日|2023年4月1日|2023年01月05日|
| --------------|--------------|--------------|--------------|--------------|
| AB-01-M1| 0|二十|三十|四十|
| AB-02-M2|五十|10个|二十|0|
| 产品(表2)|日期|数量|
| --------------|--------------|--------------|
| AB-01-M1| 2023年1月2日|二|
| AB-01-M1| 2023年3月1日|二|
| AB-01-M1| 2023年4月1日|二|
| AB-01-M1| 2023年01月05日|二|
| AB-02-M2| 2023年1月2日|二|
| AB-02-M2| 2023年3月1日|二|
| AB-02-M2| 2023年4月1日|二|
| AB-02-M2| 2023年01月05日|二|
预期结果:
| 产品中心|日期|数量|
| --------------|--------------|--------------|
| AB-01-M1| 2023年1月2日|0|
| AB-01-M1| 2023年3月1日|二十|
| AB-01-M1| 2023年4月1日|三十|
| AB-01-M1| 2023年01月05日|四十|
| AB-02-M2| 2023年1月2日|五十|
| AB-02-M2| 2023年3月1日|10个|
| AB-02-M2| 2023年4月1日|二十|
| AB-02-M2| 2023年01月05日|0|
4条答案
按热度按时间bwntbbo31#
您的Table 2只是Table 1的未透视版本。
在Excel 2010+和Microsoft 365中,您可以使用Power Query(内置或在最早版本中作为免费的MS提供的加载项提供)创建整个Table 2给予Table 1。
Get & Transform
=>Get Data
=>From Table
然后选择Product列和
Unpivot Other Columns
。在Microsoft 365中,您还可以通过使用具有某些较新函数的工作表公式来创建表2。
例如,输入到单个单元格中:
创建:
从上面的
Table 1
改编自answer given by @pgSystemTester
sqyvllje2#
您可以使用index(match)将日期与产品编号匹配以获取值。我拿了你的样本,把它们并排放在一张纸上,用I2中的这个公式,把它拖下来。
uyhoqukh3#
您可以尝试以下操作:
这是另一种不使用数组助手函数(如
MAP
)的方法:下面是输出:
该公式仅取决于两个范围:
lk
,in
,这样就可以更容易地调整到您的真实的问题。其余的名字是从它们推导出来的,通过DROP
,TAKE
和INDEX
。有很多方法可以做到这一点,这只是其中之一。我们使用MAP
来迭代data
的前两列的data
。我们从lk
name通过FILTER
按乘积(p
)过滤行,然后通过INDEX/XMATCH
组合获取给定日期(d
)的相应列。klr1opcd4#
下面是在Google工作表中取消透视的公式。
您可以使用XLOOKUP & FILTER来获取值。
你可以像下面这样用更动态的方式来计算
在Excel中,您可以使用Power Query Tool来取消透视其他列
1.选择
Table 1
1.从
Data
Tab =>Get&Transform Data
=>From Table/Range
1.将
Home Tab
中的M-Code
粘贴到Advanced Editor
中1.点击
Close & Load
,在新工作表中获取预期结果在Excel中使用
VLOOKUP
&MATCH
函数可以得到预期的结果在单元格I2中输入公式并向下拖动
在Excel中,您可以使用双XLOOKUP或XLOOKUP & FILTER
在单元格I2中输入公式并向下拖动