【PowerQuery】做了一万遍的工资条
前面已经了解了Excel、VBA、Python实现工资条,今天尝试用PQ做一遍
做之前迷惑了很久,如何能自定义长度
Table有Repeat函数,但是List没有。看来另外想办法
一步步接近目标
请出今天的主角
插入行:插入哪张表,插入行号(即索引0开始),插入内容(即行列表(记录))
简单点:什么表。什么位置,插入什么数据
下面是单行和多行
源数据:为了方便截图,行数限制4行
第一次尝试:隔行插入标题
= List.Accumulate({1..Table.RowCount(源)},源,(x,y)=>Table.InsertRows(x,y*2-2,{Record.FromList(Table.ColumnNames(x),Table.ColumnNames(x))}))
第二次插入空行;
= List.Accumulate({1..Table.RowCount(b)-1},b,(x,y)=>Table.InsertRows(x,(y-1)*3,{Record.FromList(Text.Split(Text.Repeat("a",Table.ColumnCount(b)-1),"a"),Table.ColumnNames(x))}))
最后:一次插入空行和标题
= List.Accumulate({1..Table.RowCount(源)},源,(x,y)=>Table.InsertRows(x,(y-1)*3,{Record.FromList(Text.Split(Text.Repeat("a",Table.ColumnCount(源)-1),"a"),Table.ColumnNames(x)),Record.FromList(Table.ColumnNames(x),Table.ColumnNames(x))}))
最后跳过表前2行
---------------------------------------------------------------------------------------------------------------------
如果用一行代码就是
= Table.Skip(List.Accumulate({1..Table.RowCount(源)},源,(x,y)=>Table.InsertRows(x,(y-1)*3,{Record.FromList(Text.Split(Text.Repeat("a",Table.ColumnCount(源)-1),"a"),Table.ColumnNames(x)),Record.FromList(Table.ColumnNames(x),Table.ColumnNames(x))})),2)
对应高级编译器
let
源 = Excel.CurrentWorkbook(){[Name="表1"]}[Content],
工资条 = Table.Skip(List.Accumulate({1..Table.RowCount(源)},源,(x,y)=>Table.InsertRows(x,(y-1)*3,{Record.FromList(Text.Split(Text.Repeat("a",Table.ColumnCount(源)-1),"a"),Table.ColumnNames(x)),Record.FromList(Table.ColumnNames(x),Table.ColumnNames(x))})),2)
in
工资条
【PowerQuery】做了一万遍的工资条的更多相关文章
- 必须得是一万小时的 刻意训练(deliberate practice)
成功素质1:一万小时与格物致知 “格物致知14”的概念,我是从张银奎11老师那里了解到的.它的意思是“推究事物的原理,从而获得知识”,跟我在<透过现象看本质 - 写在观看WWDC 2016 Ke ...
- noip做题记录+挑战一句话题解?
因为灵巧实在太弱辽不得不做点noip续下命QQAQQQ 2018 积木大赛/铺设道路 傻逼原题? 然后傻逼的我居然检查了半天是不是有陷阱最后花了差不多一个小时才做掉我做过的原题...真的傻逼了我:( ...
- [NewLife.Net]单机400万长连接压力测试
目标 对网络库NewLife.Net进行单机百万级长连接测试,并持续收发数据,检测网络库稳定性. [2020年8月1日晚上22点] 先上源码:https://github.com/NewLifeX/N ...
- 【初码干货】【Azure系列】1、再次感受Azure,体验Windows Server 2016并部署BlogEngine.NET
上个月末,在某人的建议下,重新注册了一个1元试用账户(包含1个月期限的1500元订阅),并充值了1000元转为了正式账户,相当于1000元得到了2500的订阅,于是又一次开启了Azure之旅. 在这不 ...
- 一些对数学领域及数学研究的个人看法(转载自博士论坛wcboy)
转自:http://www.math.org.cn/forum.php?mod=viewthread&tid=14819&extra=&page=1 原作者: wcboy 现在 ...
- 到底为什么你的APP项目烂尾了?
你正在经历迷茫.纠结,或者愤怒.痛苦的情绪,因为,你的APP项目已经或将要烂尾了. 目前的状况只有3种: 项目一直拖到现在,并且很可能继续拖下去 项目在开发期间不断上涨成本 项目完成,BUG多多,不能 ...
- ios-高仿别踩白块游戏的实现
先看下效果图片 前几天看到一个游戏叫别踩白块,下载量还挺大几百万了都,下载下来玩了玩看了看,这个游戏还挺简单的.俗话说想一千遍,一万遍不如动手做一遍来的实在.昨晚以及今天白天闲的没事就开搞了,下午六点 ...
- 关于git
一.Git基础教程 01.[入门练习]廖雪峰 git教程网:http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8 ...
- 【转】论创新工场、职业发展、offer如何比较选择、移动互联网
大纲:一.缘由.概述二.创新工场的模式三.职业发展道路的影响因素四.职业选择的几个小问题五.李开复的移动互联网和我眼中的移动互联网六.再见和祝福 一.缘由.概述1.缘由 前两周,有个师弟 ...
随机推荐
- Locust性能测试1--简介安装及基本使用
1. Locust简介 Locust是易于使用的分布式用户负载测试工具,旨在对网站(或其他系统)进行负载测试,并弄清一个系统可以处理多少个并发用户,Locust翻译过来是蝗虫的意思,在测试期间,意在一 ...
- efcore技巧贴-也许有你不知道的使用技巧
前言 .net 环境近些年也算是稳步发展.在开发的过程中,与数据库打交道是必不可少的.早期的开发者都是DbHelper一撸到底,到现在的各种各样的ORM框架大行其道.孰优孰劣谁也说不清楚,文无第一武无 ...
- 以vue+TreeSelect为例,如何将扁平数据转为tree形数据
// 目标:将后台返回的扁平数据,根据parentId转为下拉tree <el-form-item label='下拉选择数据'> <tree-select v-model='tre ...
- 通过Tomcat jpress连接不到数据库
-- 实际数据库.用户名,密码,主机账号,端口号均正确 提示如下: 异常如下:------------------------------------------------------------- ...
- 洛谷 P4995 跳跳!
思路 贪心 从大到小排序,然后反复横跳,记录两个指针 \(l=1, r=n\),从 \(1\) 跳到 \(n\),再从 \(n\) 跳到 \(2\),然后从 \(2\) 跳到 \(n - 1\)--, ...
- AndroidStudio与eclipse打包的时候报错。Error:(4) Error: "ssdk_instapager_login_html" is not translated in "en"
作者:程序员小冰,CSDN博客:http://blog.csdn.net/qq_21376985 QQ986945193 博客园主页:http://www.cnblogs.com/mcxiaobing ...
- Android开发之下载服务器上的一张图片到本地java代码实现HttpURLConnection
package com.david.HttpURLConnectionDemo; import java.io.FileOutputStream; import java.io.IOException ...
- Android Studio从Eclipse导项目
要是你只下了Android Studio 就不能用Eclipse导出gradle项目了 可以直接使用Android Studio导入模块,在Android Studio里Project算Eclipse ...
- 平衡二叉搜索树/AVL二叉树 C实现
//AVTree.h #ifndef MY_AVLTREE_H #define MY_AVLTREE_H typedef int ElementType; struct TreeNode { Elem ...
- JS 进制转换的理解
该事情的由来是来自于一个面试题,题目是这样的,[1,2,3].map(parseInt)的结果是什么? 作为菜鸟的我们一定是觉得分别把1,2,3分别交给parseInt,无非就是1,2,3嘛.其实结果 ...