gpt4 book ai didi

vba - Excel ActiveX 列表框随着每次更新而缩小

转载 作者:行者123 更新时间:2023-12-03 00:25:44 29 4
gpt4 key购买 nike

我有一组链接的子程序,其工作原理如下:

  1. 用户在 ActiveX 文本框中键入内容
  2. TextBox 中的更改事件调用模块中的子组件
  3. 该模块子驱动器更新工作表中的命名范围
  4. 范围值会驱动更新使用基于范围值的查找函数的 Excel 单元格表格
  5. 表格值被复制并粘贴到另一个范围(以消除公式链接)
  6. 使用此方法将粘贴的范围放入列表框中(感谢 Rory 的耐心):

    ActiveSheet.ListBox1.List = Sheets("搜索条件控件").Range("G1:G21").Value

结果是,对于用户在 TextBox 中键入的每个字符,ListBox 都会更新。

我遇到的问题是,随着上面 #1 中提到的 TextBox 中的每次击键,ListBox 都会缩小一点。这是正常行为吗?我误用了列表框,我是否做错了什么,或者每次更新列表框时是否需要重新指定列表框的尺寸?

ActiveSheet.OLEObjects("ListBox1").Top = 35
ActiveSheet.OLEObjects("ListBox1").Left = 650
ActiveSheet.OLEObjects("ListBox1").Width = 550
ActiveSheet.OLEObjects("ListBox1").Height = 610

预先感谢您对此的任何想法。

最佳答案

我也遇到了同样的问题。我的 ActiveX 列表框会在工作表上移动并更改大小,但我看不到任何原因。

虽然我确实继续开发了一些代码来重置大小和坐标,但这并不令人满意,因为必须有一种机制来触发该代码 - 我不想给最终用户带来负担。

我在另一个用户论坛中找到了更好的答案。有一个名为 IntegralHeight 的列表框属性,其默认属性为 True - 与屏幕分辨率和列表框内容的最佳显示有关。只需将其设置为False即可。我用一些让我适应的 ActiveX 框做到了这一点,并且我能够禁用“调整”代码,到目前为止,一切都很好!

关于vba - Excel ActiveX 列表框随着每次更新而缩小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28152501/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com