Microsoft Excel:是否可以根据内容大小自动设置列宽?

时间:2015-08-12 09:32:20

标签: excel

我有一个预先定义的Excel模板,我将用.Net C#代码填充数据。

我知道某些列的大小,但其中一些我不知道,因此当我将数据导出到Excel时,演示文稿看起来并不好看。

此xls表格已发送给客户。像这样每天生成1000份文件。每次打开新生成的Excel文档并通过双击列更改列的宽度以进行自动调整,这是一项繁琐的工作。

在Microsoft Excel中是否可以自动调整某些列的大小而不是其他几列?

2 个答案:

答案 0 :(得分:0)

range("a2:d2").Columns.AutoFit  

你也可以使用像

这样的东西
range("a2").CurrentRegion.Columns.AutoFit  

range("a:d, f:g").Columns.AutoFit

答案 1 :(得分:0)

如果你想要它的VBA是:

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Application.ScreenUpdating = False
For Each Value In Target.Columns
    Worksheets(Sh.Name).Columns(Value.Column).AutoFit
Next Value
Application.ScreenUpdating = True
End Sub
  • 转到开发人员标签(必须通过文件>选项>自定义功能区打开它。
  • 打开Visual Basic
  • 选择Thisworkbook
  • 复制以上VBA代码
  • 粘贴到VBA窗口
  • 关闭VBA窗口和VBA编辑器