Excel指定范围大批量数据填充
零、序
本文仅以作者实际需求出发,以针对性地较为简单直接的方式实现需求。
如果有相关的,但不大一致的需求场景,只能请读者自行摸索研究了。
另外,本文测试基于版本:2021

一、设置单元格的格式
选中起始单元格(你准备填充数据的第一个格子),点击鼠标右键。
在弹出来的菜单选项中,选择设置单元格格式。

在弹出来的页面里,选择自定义。
此时,你会看到右侧显示有大量的微软已经做好并提供给你可以直接使用的格式模板。


二、自定义单元格格式相关的一些占位符
注:这些符号,全是英文里的符号,用中文的符号的话,识别不了。
注:能理解这些占位符的作用,就能读懂官方提供的那些示例。然后就可以自己按照需求定义出千变万化的各种单元格格式了。
2.1 #
一个#表示一个数字
例如:##.## (表示一个最多精确到百分位的数)
如果原数据的小数位多余小数点后的##数,则会自动四舍五入


如果少于#数,则等于原数据


2.2 0
0也是表示数字
例如:0.00 (表示一个精确到百分位的数)
如果原数据的小数位多于小数点后面的0的个数,则会自动四舍五入

如果原数据的小数位少于小数点后面的0的个数,则会自动补充0

再例如:000 (表示至少三位的整数)
如果原数据带小数,则自动四舍五入

如果原数据小于3位,则补0

如果原数据大于3位,则等于原数据


2.3 ?
注意:是英文里的?
与0类似,但是位数不足时,使用空格进行填充
例如:???.????



2.4 ""
将格式中的不变的内容包裹起来
例如:"现在是"00"点"


2.5 @
@表示原数据的文本内容
例如:"今天是周"@

如果重复使用@,则格式化的时候会重复原数据内容
例如:"ABC"@@


2.6 !
转义字符,类似编程里的\
用于把这些特殊的字符进行转义,使其失去原本的特殊标识效果,然后就能被打印出来
例如:"ABC"!?00 (这里是把前文提及的?进行了转义)

特殊地,可以用来实现 以万为单位的格式
例如:#!.#,"万"


2.7 [条件]
例如:[>0]"正数";[=0]"零";"负数" (不同条件用英文分号隔开,最后一个表示其他情况下的处理)

最多只能有三种条件结果

2.8 ,
注意:是英文里的逗号
表示千分位分隔符
例如:#,###


2.9 *
重复下一个字符,直到填满列宽
例如:@*K


2.10 \
标识后面的字符为文本字符串
例如:@\你好
实际上,在点击确定后,Excel会自动将其转变成双引号的常用形式:@"你""好"


2.11 [颜色]
例如:[红色]0;[黑色]-0;[黄色]0;[白色]@
注:
2016版本前,可以使用的颜色有:红色、黑色、黄色,绿色、白色、蓝色、洋红色、青色
2016版开始,青色不再能使用
注2:
这里使用了excel默认的判定:
第一个分号内判断是>0;第二个分号内判断是<0;第三个分号内是判断=0;第四个是判断为字符串
注:
自定义格式代码最多可以有四节,用分号隔开。

还可以使用[颜色n]来直接使用调色盘中的颜色,其中n∈[0,56]
例如:[颜色8]0;[颜色1]-0;[颜色26]0;[颜色10]@

结合条件占位符
例如:[红色][>0]0;[黑色][<0]-0;[蓝色]0


2.12 时间
关于时间,其实模板已经提供得很全面了,可以直接参考使用。

示例:yyyy/mm/dd hh:mm:ss


2.13 _
在数字格式中创建N个字符宽的空格
例如:"ABC"___###


2.14 空
即用分号划分节的时候,故意在某些节里留空。此时这些被留空的节,表示满足对应条件时,隐藏对应内容。
例如:;-0;; (此时说明,只有输入数据为负数时才显示,其他情况下都隐藏)



2.15 G/通用格式
原本是啥,就照常展示。这也是默认的自定义格式。
这个就没啥可举例的。

三、设置起始值
先假设这里设置的单元格格式是:"A12BC"00000
表示含义:单元格中的内容,以A12BC字符串开头,后面跟着5位长的数字,数字不足5位时以0填充。

输入1,经过单元格格式的自动格式化后,我们得到了起始值。


四、选中指定范围的单元格
先选中第二个要填充数据的单元格(因为第一个已经填充好了)

在名称框中输入要填充的单元格的起止名称
例如:A2:A10 表示从A2单元格开始,A10单元格结束。
其中,A表示哪一列,中间使用的是英文的冒号,n(数字)表示第几行。

输入完起止名称,则点击键盘的Enter(回车键/换行键/Return)
此时将选中对应范围内的所有单元格


五、按照指定的规律一键赋值
输入你希望的要被填充的数据的变化规律,我这里写得比较简单,就是单调递增+1。
实际你可以写很复杂的函数公式。
另外,别忘了开头肯定是等于号,因为这是在赋值。

输入好规律后,同时按下 Ctrl 和 Enter
则数据就填充好了。
