Vba 是/否表、匹配和反向索引
我有一个表,里面有是和否的值。我需要一个公式来定位所有具有“Yes”值的单元格,并索引用于定义单元格的行(Apples、Orange、Pear)和列(Molly、Joe、Sarah)标题 然后获取定义的行和列信息,并将其放在第二个工作表的两列中 我想要的东西,将能够更新,如果是或否值改变 工作表1上的是/否表: Molly Joe Sarah Apples Y N Y Orange N Y N Pear Y N N 莫莉·乔·莎拉 苹果 橙色 梨 我希望它在工作表2中是什么样子: Column A Column B Molly Apples Molly Pear Joe Orange Sarah Apple A列B列 莫莉苹果 茉莉梨 乔·奥兰治 莎拉苹果Vba 是/否表、匹配和反向索引,vba,if-statement,indexing,excel-formula,match,Vba,If Statement,Indexing,Excel Formula,Match,我有一个表,里面有是和否的值。我需要一个公式来定位所有具有“Yes”值的单元格,并索引用于定义单元格的行(Apples、Orange、Pear)和列(Molly、Joe、Sarah)标题 然后获取定义的行和列信息,并将其放在第二个工作表的两列中 我想要的东西,将能够更新,如果是或否值改变 工作表1上的是/否表: Molly Joe Sarah Apples Y N Y Orange N Y N Pear Y
let
Source = Excel.CurrentWorkbook(){[Name="Table2"]}[Content],
#"Changed Type" = Table.TransformColumnTypes(Source,{{"Column1", type text}, {"Molly", type text}, {"Joe", type text}, {"Sarah", type text}}),
#"Unpivoted Columns" = Table.UnpivotOtherColumns(#"Changed Type", {"Column1"}, "Attribute", "Value"),
#"Filtered Rows" = Table.SelectRows(#"Unpivoted Columns", each ([Value] = "Y")),
#"Reordered Columns" = Table.ReorderColumns(#"Filtered Rows",{"Attribute", "Column1", "Value"}),
#"Removed Columns" = Table.RemoveColumns(#"Reordered Columns",{"Value"}),
#"Renamed Columns" = Table.RenameColumns(#"Removed Columns",{{"Attribute", "Column A"}, {"Column1", "Column B"}})
in
#"Renamed Columns"
输入:
let
Source = Excel.CurrentWorkbook(){[Name="Table2"]}[Content],
#"Changed Type" = Table.TransformColumnTypes(Source,{{"Column1", type text}, {"Molly", type text}, {"Joe", type text}, {"Sarah", type text}}),
#"Unpivoted Columns" = Table.UnpivotOtherColumns(#"Changed Type", {"Column1"}, "Attribute", "Value"),
#"Filtered Rows" = Table.SelectRows(#"Unpivoted Columns", each ([Value] = "Y")),
#"Reordered Columns" = Table.ReorderColumns(#"Filtered Rows",{"Attribute", "Column1", "Value"}),
#"Removed Columns" = Table.RemoveColumns(#"Reordered Columns",{"Value"}),
#"Renamed Columns" = Table.RenameColumns(#"Removed Columns",{{"Attribute", "Column A"}, {"Column1", "Column B"}})
in
#"Renamed Columns"
输出:
let
Source = Excel.CurrentWorkbook(){[Name="Table2"]}[Content],
#"Changed Type" = Table.TransformColumnTypes(Source,{{"Column1", type text}, {"Molly", type text}, {"Joe", type text}, {"Sarah", type text}}),
#"Unpivoted Columns" = Table.UnpivotOtherColumns(#"Changed Type", {"Column1"}, "Attribute", "Value"),
#"Filtered Rows" = Table.SelectRows(#"Unpivoted Columns", each ([Value] = "Y")),
#"Reordered Columns" = Table.ReorderColumns(#"Filtered Rows",{"Attribute", "Column1", "Value"}),
#"Removed Columns" = Table.RemoveColumns(#"Reordered Columns",{"Value"}),
#"Renamed Columns" = Table.RenameColumns(#"Removed Columns",{{"Attribute", "Column A"}, {"Column1", "Column B"}})
in
#"Renamed Columns"
过程:
let
Source = Excel.CurrentWorkbook(){[Name="Table2"]}[Content],
#"Changed Type" = Table.TransformColumnTypes(Source,{{"Column1", type text}, {"Molly", type text}, {"Joe", type text}, {"Sarah", type text}}),
#"Unpivoted Columns" = Table.UnpivotOtherColumns(#"Changed Type", {"Column1"}, "Attribute", "Value"),
#"Filtered Rows" = Table.SelectRows(#"Unpivoted Columns", each ([Value] = "Y")),
#"Reordered Columns" = Table.ReorderColumns(#"Filtered Rows",{"Attribute", "Column1", "Value"}),
#"Removed Columns" = Table.RemoveColumns(#"Reordered Columns",{"Value"}),
#"Renamed Columns" = Table.RenameColumns(#"Removed Columns",{{"Attribute", "Column A"}, {"Column1", "Column B"}})
in
#"Renamed Columns"
可能重复的功能。或者,感谢您向我展示“反向枢轴”功能。它工作得很好。它是否能够随着Y/N表中数据的更改而更改,还是每次都必须运行它?您是否尝试过?