方法一:条件格式(首选,90%场景够用)
操作步骤(Excel/WPS通用)
1.选中要生效的区域
只给某列/某块区域设置:直接鼠标选中对应单元格(比如`A1:D1000`)
给整个表格设置:点击工作表左上角「行号列号交叉的三角」,全选所有单元格

2.打开条件格式规则
顶部菜单栏→「开始」选项卡→找到「条件格式」→点击「新建规则」→选择最后一项:「使用公式确定要设置格式的单元格」

3.输入判断公式
在「为符合此公式的值设置格式」框里,输入:
```excel
=A1<>""
```
>注意:公式里的`A1`必须是你选中区域的左上角第一个单元格(比如你选中的是`B2:E100`,就写`=B2<>""`),不要加$符号(保持相对引用,每个单元格会自动判断自己是否为空)。

4.设置边框样式
点击下方「格式」按钮→切换到「边框」选项卡:
1.先选线条样式(比如细实线,默认即可)
2.点击「外边框」(想要单元格四周都有边框);需要内部格子线就再点「内部」
3.点击「确定」保存格式

5.完成生效
再点一次「确定」保存规则,此时:
输入任意内容→单元格自动出现边框
删除内容清空单元格→边框自动消失



进阶变种:有内容时「整行都加边框」
如果你希望A列输入内容后,整行都自动加上边框(比如做台账,一行数据整体加框):
1.选中整张表(左上角三角)
2.条件格式公式改成(锁定A列):
```excel
=$A1<>""
```
3.边框设置选「外边框」即可,A列有内容的行,整行都会显示边框。



方法二:VBA代码(适合批量/复杂场景,需启用宏)
如果需要更灵活的控制(比如只对特定工作表生效、自定义边框粗细颜色),可以用工作表Change事件:
1.按`Alt+F11`打开VBA编辑器
2.左侧双击你要设置的工作表(比如Sheet1)
3.粘贴以下代码:
```vba
PrivateSubWorksheet_Change(ByValTargetAsRange)
DimcellAsRange
'遍历修改过的单元格
ForEachcellInTarget
Ifcell.Value<>""Then
'有内容:加细实线外边框
cell.Borders.LineStyle=xlContinuous
cell.Borders.Weight=xlThin
Else
'空内容:清除所有边框
cell.Borders.LineStyle=xlNone
EndIf
Nextcell
EndSub
```
4.关闭VBA窗口,保存文件时选「Excel启用宏的工作簿(.xlsm)」格式即可。