【问题标题】:Excel VBA autofit event handlerExcel VBA 自动调整事件处理程序
【发布时间】:2017-09-11 13:13:11
【问题描述】:

当用户触发自动调整列(或行)时,我试图触发一个函数。因此,当用户双击列标题之间的线以自动更改列宽时。

我可以使用 VBA 中的函数更改列宽:Columns("D:D").EntireColumn.AutoFit,但我想为它设置事件 handler / trigger ...

【问题讨论】:

  • 没有事件暴露于此。

标签: excel vba triggers eventhandler


【解决方案1】:

正如 cmets 中提到的,没有自动调整事件,但有一种方法可以确保它与您想要的一样。因此,您可以使用_Change 事件,宽度为常数:

Private Const STANDARD_WIDTH = 6

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Range("A:A").ColumnWidth <> STANDARD_WIDTH Then
        Range("A:A").ColumnWidth = STANDARD_WIDTH
    End If
End Sub

【讨论】:

  • 这有帮助,但如果用户不更改选择,则不会触发。
猜你喜欢
  • 2020-05-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多