想在wps表格里做身份证的小格子?超简单,直接在身份证号那列的单元格里输入 =rept("□",18) 就搞定——□ 是要重复的方格符号,18 刚好对应身份证号码的18位数。本次操作演示用的是wps表格;示例底图来自公开的wps表格教程页面,处理时仅做了裁切、清理和简单标注。
第一步:选中身份证号单元格
先把光标点到要生成小格子的第一个单元格,咱们这里选的是B2。表头建议写成「身份证号」,左边留着姓名列,后面填充公式的时候,就能顺着人员名单逐行生成一样多的小格子啦。

第二步:输入 REPT 函数名
在B2里先输入 =rept,WPS会在编辑区域旁边弹出函数提示。能看到 REPT 就说明函数名识别正常,接着补上左括号和要重复的文本内容就行。

第三步:选择方格符号
身份证格子常用空心方块。输入法候选框里能直接选「□」的话,直接选最省事;也可以先从别处复制这个字符,再粘到英文双引号中间。这里要注意:方格必须放在引号里,写成 "□",不然WPS会把它当成公式里的未定义内容,容易报错。

第四步:补齐重复次数
把公式补完整:=REPT("□",18)。逗号后面的 18 表示重复18次,正好对应身份证号码的位数。要是表格区域比较窄,记得先把B列拉宽一点,不然格子会挤在一起,看不出是独立的小格。

第五步:确认第一个结果
按回车键后,B2会显示一排连续的空心方格。这时候先检查两个地方:单元格里是不是刚好18个方格,公式栏里是不是还保留着 =REPT("□",18)。如果单元格直接显示的是公式文本,多半是单元格被设成了文本格式,改成常规格式再重新输入公式就好。

第六步:向下填充整列
第一个单元格确认没问题后,把鼠标放到B2右下角的填充柄上,向下拖到名单的最后一行就行。每一行都会得到一模一样的18个小格子,后续打印登记表的时候,填写人就能对着格子逐位写身份证号码了。

REPT 函数语法和参数
REPT的语法特别简单:
=REPT(text, number_times)
| 参数 | 含义 | 本例写法 |
|---|---|---|
text |
需要重复显示的文本,可以是字符、数字或引用单元格。 | "□" |
number_times |
重复次数,身份证小格子按 18 位填写。 | 18 |
所以说,身份证小格子的核心公式就是 =REPT("□",18)。要是想做6位的验证码格子,可以改成 =REPT("□",6);要是想让格子之间间距松一点,可以用 =REPT("□ ",18),在方块后面多加一个空格就行。
容易出错的地方
大家操作时容易踩这几个坑:第一种是忘了加英文双引号,写成 =REPT(□,18),WPS可能会提示公式有问题。第二种是把逗号输成了中文逗号,公式里建议用英文半角逗号。第三种是列宽太窄,18个格子没完整显示,把身份证号列拉宽就能看清了。
要是结果看起来不是方格,反而是空白或者乱码,通常都和字体有关。先换成宋体、微软雅黑这类常见的中文字体,再检查下方格符号是不是不小心复制成了别的字符。要是用的是WPS或者旧版Excel,需要先确认当前软件支不支持REPT函数;不过绝大多数表格软件都支持这个基础文本函数哈。
扩展示例:按单元格控制格子数量
格子数量不一定非要写死在公式里。比如在C1写「位数」,C2填18,那B2的公式就能写成 =REPT("□",C2)。以后要把身份证格改成手机号的11位,只改C2里的数字就行,不用动公式。
还可以把方格符号放到D1里,B2写成 =REPT($D$1,18)。这样以后想换成短横线、圆点或者其他占位符,不用挨个改公式,直接改D1的内容就ok。打印前记得先预览一遍,重点看看B列的宽度和行高,要是格子被压扁了,先调列宽,再考虑要不要把字号调小。











