调整表格/列表对象(用作列表框的行来源)的大小后,为什么Excel冻结?

时间:2018-10-23 09:06:48

标签: excel vba excel-vba listbox listobject

以下示例是使excel 2010崩溃的一种可行方法。

  1. 使用ListBox插入用户表单
  2. 将表插入同一工作簿
  3. 将ListBox的“ RowSource”属性设置为“ TableName”
  4. 调整表格大小

调整大小会导致冻结,因此excel会尝试重新启动,但通常无法做到这一点。退出的唯一方法是退出重新启动菜单或重新启动计算机。您一定会丢失所有未保存的进度,因此在进行某些工作时请不要这样做。

  • 为什么会这样?
  • 如何避免/解决?

编辑1:效果更好! This question指出,除了RowSource之外,没有其他方法可以获取MultiColumn Listbox的标题(除非您自己使用标签来完成)。因此,要么在代码中留下潜在的致命错误,要么对所有标头使用自己的代码。

1 个答案:

答案 0 :(得分:-1)

如果调整大小表导致行源崩溃,则在调整大小之前应避免使用它。

listbox1.rowsource = ""

做你的事

listbox1.rowsource = "your range"