多人都知道,在Excel表格中用“ROW”函数可连续添加序号,并且在删除某个序号后,所有序号还能够连续出现,但如果是在Word表格中,又如何实现上述效果呢?其实,在Word表格中用好“项目编号”,就能很好地解决上述问题。
小提示:本文截图是在Word 2019中完成的,该方法在Word 2003至2019各版本中均适用,各版本操作可能会略有不同。
在Word表格中,选中需要插入序号的列单元格。切换到“开始”选项卡,点击“编号→定义新编号格式”,在弹出窗口的“编号样式”处选择所需要的样式,如“1,2,3,...”,在“编号格式”处将“1.”更改为“1”,“对齐方式”处选择“居中”。确定之后,选定的列表格中就插入了序号。
如果想在表格中实现横向序号,怎么办呢?只需要在每列按上述方法插入序号,分别选中每列序号后,右击,选择“继续编号”,这样就实现了横向序号。
如果需要插入的某列的序号不是从“1”开始的,如实例中第3列插入序号时需要从序号“8”开始,那如何实现呢?这时,选中需要序号的列单元格,利用上述方法插入序号后选中插入的序号,右击,选择“设置编号值”,在弹出窗口的“值设置为”处输入“8”,确定即可。
小提示:
仔细观察一下,不难发现,插入的序号并没有真正居中,序号后面好像有“空格”,那如何删除这个“空格”,让序号真正居中呢?这时,需要选中插入的序号(这里需要强调一下,不是选中序号所在的单元格,而是只选中插入的序号),右击,选择“调整列表缩进”,在弹出窗口的“编号位置”处设置为“0厘米”,在“文本缩进”处设置为“0厘米”,在“编号之后”处设置为“不特别标注”;再将序号都选中,点击“居中”按钮,这样,序号就真正的居中了。
利用这种方法插入的序号,即便删除某行或添加新行,序号都会是连续的,不会发生断号现象。
期案例是对字符串中相同字母进行编号,前后转换效果如下:
解题套路
1.Table.Group
解题思路:将字符串转换为列表,进行分组操作,对各子表添加索引列,然后合并列。考虑到相同字母出现的连续性,在分组前需要添加索引列,来保证转换后的字母顺序。
Table.AddColumn(源,"New",each Text.Combine(Table.Sort(Table.Combine(Table.Group(Table.AddIndexColumn(Table.FromValue(Text.Split([Old],"-")),"idx"),"Value",{"b",each Table.CombineColumns(Table.AddIndexColumn(_,"Idx",1),{"Value","Idx"},each Text.Combine(List.Transform(_,Text.From)),"Value")})[b]),"idx")[Value],"-"))
2.List.Accumulate
解题思路:ACC的第二参数是列表,其中第一项x{0}用于存放结果,第二项x{1}用于存放连续传递的字母,这样只需要通过查找当前字母在x{1}中的位置个数,即为当前字母的序号。最后对x{0}进行深化合并即为结果。
Table.AddColumn(源,"New",each Text.Combine(List.Accumulate(Text.Split([Old],"-"),{{},""},(x,y)=>{x{0}&{y&Text.From(List.Count(Text.PositionOf(x{1}&y,y,2)))},x{1}&y}){0},"-"))
Text.PositionOf既然可以,那么List.PositionOf也可以,这里只要将Acc第二参数的第二项改为列表格式即可,统计的原理不变。
Table.AddColumn(源,"New",each Text.Combine(List.Accumulate(Text.Split([Old],"-"),{{},{}},(x,y)=>{x{0}&{y&Text.From(List.Count(List.PositionOf(x{1}&{y},y,2)))},x{1}&{y}}){0},"-"))
还有一种思路:在对字符串进行拆分以后的列表lst进行逆序排列,同时将lst作为ACC第二参数的第二项。
在遍历传递的过程中,通过查找当前字母在lst中的位置个数即为序号,同时对lst进行移除最后一项。对传递的最终结果需要再进行逆序排序。
Table.AddColumn(源,"New",each let lst=Text.Split([Old],"-") in Text.Combine(List.Reverse(List.Accumulate(List.Reverse(lst),{{},lst},(x,y)=>{x{0}&{y&Text.From(List.Count(List.PositionOf(x{1},y,2)))},List.RemoveLastN(x{1})}){0}),"-"))
以上是本期内容。
文各层级标题序号规范
一、明确公文写作序号的意义:
(一)用序号组织结构
(二)材料层次分明,逻辑清晰
(三)便于读者阅读和引述
(三)便于新手学习,打好基础
(四)不在重要材料上犯低级错误
(五)笔杆子基本功
二、序号的层次顺序
公文序号结构可分为7个层次,顺序依次为
汉字顿号(一、二、三、)
括弧汉字〔(一)(二)(三)〕
阿拉伯数字加黑点(1.2.3.)
括弧阿拉伯数字〔(1)(2)(3)〕
圆圈阿拉伯数字(①②③)
大写英文字母加黑点(A.B.C.)
小写英文字母加黑点(a.b.c.)
*请认真填写需求信息,我们会在24小时内与您取得联系。