Excel根据单元格值调整列宽

所以我有一个时间表工作簿,我已经设置了英文和西class牙文之间的翻转菜单位于input选项卡上的下拉菜单。

下拉菜单选项将导致单元格I12等于1或2
我想这个确定工作表第一周第二周的 D列宽度。
如果单元格I121列宽度将是3.33(37),或者如果I122列宽度将是5.22(54)。
自动调整不起作用,因为它不会减less,如果它回到英语。

英语

西班牙语

感谢蒂姆的帮助,我得到了它的工作。 跑到一个小故障,因为我忘了提及床单被保护。

我用了以下,并正常工作

Private Sub Worksheet_Activate() ActiveSheet.Unprotect Password:="passwordhere" Select Case ThisWorkbook.Sheets("Input").Range("I12").Value Case 1: Me.Columns(4).ColumnWidth = 2.5 Case 2: Me.Columns(4).ColumnWidth = 5 End Select ActiveSheet.Protect Password:="passwordhere" End Sub 

最简单的方法是在工作表代码模块中为需要调整列宽度的每个工作表添加类似如下内容:

 Private Sub Worksheet_Activate() Select Case ThisWorkbook.Sheets("Input").Range("I12").Value Case 1: Me.Columns(4).ColumnWidth = 10 Case 2: Me.Columns(4).ColumnWidth = 20 End Select End Sub