|
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用 · 内置多项VBA编程加强工具 ★ 免费下载 ★ ★ 使用手册★
本帖最后由 ryujehong 于 2021-11-6 22:12 编辑
这是一个查询条件变化也能动态筛选出结果的表,
但“字段”这一步骤中的[学校],[班级],[姓名],[分数] 是手写上去的,没法动态变更,万一字段名称改变或者添加新列,整个表就没有意义了,请问m函数有无方法能够动态抓取出字段呢。
语言表述可能不到位,还望各位耐心看下代码,统一感谢各位!
- let
- 源 = Table.Combine({西城区, 海淀区, 朝阳区}),
- 表转记录 = Table.ToRecords(源),
- 方式 = {Text.StartsWith,Text.EndsWith,Text.Contains}{List.PositionOf({"起始","结束","包含"},查询条件[查询]{0})},
-
-
- // {[学校],[班级],[姓名],[分数]}这一部分为手动输入,希望可以用m函数做到自动获取,来实现动态化
- 字段 = {[学校],[班级],[姓名],[分数]} {List.PositionOf(Table.ColumnNames(源),查询条件[查询]{1})},
-
-
- 关键词 = 查询条件[查询]{2},
- 筛选 = List.Select(表转记录, each 方式({[学校],[班级],[姓名],[分数]}{List.PositionOf(Table.ColumnNames(源),查询条件[查询]{1})},关键词)),
- 结果 = Table.FromRecords(筛选)
- in
- 结果
复制代码
|
|