You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Excel VBA用户窗体fmStyleDropDownList组合框赋值触发运行时错误380如何解决

VBA用户窗体组合框(fmStyleDropDownList模式)运行时错误380的解决方案

报错根因

当fmStyleDropDownList模式的组合框处于下拉展开、内部文本高亮的激活状态时,控件内部会暂时锁定Value属性的修改权限,此时直接赋值就会触发「无效属性值」的380错误。你之前直接使用ComboBox1.ListIndex = -1无效,也是因为操作时组合框还处于锁定状态,属性修改被拦截。

可行解决方案

方案1:赋值前转移焦点(推荐,改动最小)

只需要在修改组合框值之前,将焦点转移到其他控件(比如当前点击的命令按钮本身),即可解除组合框的锁定状态:

Private Sub CommandButton1_Click()
    ' 转移焦点解除组合框激活状态
    CommandButton1.SetFocus
    ComboBox1.Value = "But then it errors sometimes if I change it here"
End Sub

方案2:先收起下拉列表再赋值

如果不想变更当前焦点,可先手动关闭组合框的下拉状态,等待控件状态更新完成后再赋值:

Private Sub CommandButton1_Click()
    ' 手动收起下拉列表
    ComboBox1.DropDown = False
    ' 等待控件状态更新完成
    DoEvents
    ComboBox1.Value = "But then it errors sometimes if I change it here"
End Sub

以上两种方案都不需要修改组合框的Style属性,可稳定规避该报错。

内容的提问来源于stack exchange,提问作者moreQthanA

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 15:15:04