excel中Alt F11打开宏编辑器,复制以下代码并保存,选中要调整的文档大小所在的列,运行宏代码即可快速完成
Sub 批量调整对象格式大小()
Dim shp As Shape
Dim col As Integer
col = Selection.Column '选定列号
For Each shp In ActiveSheet.Shapes
If shp.TopLeftCell.Column = col Then '判断是否在指定列中
With shp
.LockAspectRatio = msoFalse '取消锁定纵横比
.Height = .TopLeftCell.Height '将对象高度设置为单元格高度
.Width = .TopLeftCell.Width '将对象宽度设置为单元格宽度
.Top = .TopLeftCell.Top '将对象上边缘对齐单元格上边缘
.Left = .TopLeftCell.Left '将对象左边缘对齐单元格左边缘
.Top = .TopLeftCell.Top.TopLeftCell.Height - .Height '将对象下边缘对齐单元格下边缘
.Left = .TopLeftCell.Left.TopLeftCell.Width - .Width '将对象右边缘对齐单元格右边缘
End With
End If
Next shp
End Sub
这段 VBA 代码用于批量调整 Excel 中的对象格式大小 。具体实现过程如下:
- 获取选定列号:使用 Selection.Column 属性获取用户选定的列号 , 以便判断对象是否在指定列中 。
- 遍历所有对象:使用 ActiveSheet.Shapes 集合遍历所有对象 , 并使用 TopLeftCell 属性判断对象是否在指定列中 。
- 调整对象格式大?。菏褂?LockAspectRatio 属性取消锁定纵横比 , 使用 Height 和 Width 属性将对象的高度和宽度设置为单元格的高度和宽度,使用 Top 和 Left 属性将对象的上边缘和左边缘对齐单元格的上边缘和左边缘,使用 Top 和 Left 属性将对象的下边缘和右边缘对齐单元格的下边缘和右边缘 。