使用VLOOKUP填充单元格时如何启用AutoFit自动调整尺寸?
Excel 2013 VLOOKUP单元格AutoFit自动更新方案说明
你目前使用的VBA方法不是修改该默认行为的唯一方式,还有以下几种可选方案:
- 优化VBA自动触发方案
你现有代码可以简化为Cells.Rows.AutoFit,不需要先选中单元格,可以避免选中操作带来的屏幕闪烁。如果需要实现自动适配无需手动运行脚本,可以把代码挂到工作表的Calculate事件中,只要公式(包括VLOOKUP)返回结果更新就会自动触发行高适配,代码如下:
Private Sub Worksheet_Calculate() ' 全表适配行高,可替换为指定范围缩小执行开销 Me.Rows.AutoFit End Sub
把上述代码放到对应工作表的代码模块中即可生效。
- 无宏方案:辅助单元格触发
如果不想启用宏,可以用辅助单元格间接触发AutoFit:找一个空白单元格,输入和VLOOKUP单元格关联的公式,比如=A1(A1为VLOOKUP所在单元格),VLOOKUP结果更新时辅助单元格内容会同步变化,Excel会对直接触发内容更新的辅助单元格所在行/列做AutoFit适配,间接带动VLOOKUP单元格的尺寸更新。 - 快捷键手动适配
如果不需要自动更新,除了点击菜单按钮,还可以用快捷键快速操作:- 按
Ctrl+A全选所有单元格 - 自动调整行高按
Alt+H O A,自动调整列宽按Alt+H O I
- 按
补充说明:该现象是Excel的默认设计逻辑,AutoFit默认仅对直接手动输入内容的单元格触发自动适配,公式返回结果更新不属于触发范围,目前没有系统级设置可以直接修改这个默认规则,所有方案都是通过绕开触发逻辑实现适配。
内容的提问来源于stack exchange,提问作者A-Tech
相关产品推荐
相关产品推荐

