我有两本 Excel 工作簿。第一个工作簿包含我需要的所有信息,这些信息按机器排序,并在机器后面输入 3 个数字,该工作簿的输入就是以此格式创建的;
机器1 | 1号| 2号| 3号| 机器2 | 1号| 2号| 3号| 机器3 | 1号| 2号| 3号|
工作簿由工作表分隔,每天都会创建一个新工作表来输入当天的数字。
第二个工作簿将每台机器按工作表分开,输入是每天从第一个工作簿每行获取的数字。
我如何(如果可能的话)动态地将数字导入到第二个工作表中,并使用第一个工作簿上的当前日期数字进行更新?
我尝试了几种条件格式,但最终没有成功,并尝试将单元格从一本工作簿链接到另一本工作簿。没有任何成功。
如果有多个sheet,而且每天的sheet数量都不一样,Power Query会更好。
在第二个工作簿中,创建一个新查询以获取第一个工作簿中的数据。合并所有纸张。然后对数字进行逆透视。这将为您提供一张包含所有日期、机器和数字的表格。
这是一些示例数据的代码,但您需要了解一些有关 Power Query 的知识才能确定要更改哪些列名称等,因为您的数据会有所不同。
let
Source = Excel.Workbook(File.Contents("C:\Users\your.name\Documents\your_file.xlsx"), null, true),
#"Removed Columns" = Table.RemoveColumns(Source,{"Item", "Kind", "Hidden"}),
#"Expanded Data" = Table.ExpandTableColumn(#"Removed Columns", "Data", Table.ColumnNames(Table.Combine(#"Removed Columns"[Data]))),
#"Renamed Columns" = Table.RenameColumns(#"Expanded Data",{{"Column1", "Machine"}, {"Column2", "Number1"}, {"Column3", "Number2"}, {"Column4", "Number3"}}),
#"Unpivoted Columns" = Table.UnpivotOtherColumns(#"Renamed Columns", {"Name", "Machine"}, "Attribute", "Value")
in
#"Unpivoted Columns"
然后在每个机器工作表上,您可以使用
SUMIFS
获取所需的数字,或者仅根据数据创建数据透视表。