我正在为VBA写一个应用程序。结果是我有一个组合框,除了其他东西,当它改变时解锁一个名为Cotizaciones_y_obras的用户形式中的列表框:
Cotizaciones_y_obras.ListBox3.Locked = False
问题是,当我运行VBA应用程序并执行上述句子时,错误& H8000FFFF(-2147418113)出现在另外6条错误消息中,Excel不允许保存任何内容。每次发生时我都要重启Excel。
我查看了一些人们建议您禁用所有附加组件的论坛。我没有启用它们,似乎问题是Excel 2k10和Excel 2013。
似乎它与用户表单和一些属性中的多项有关。这个人也有类似的问题 in this post。 组合框更改时触发的例程如下:
Private Sub Estatus_Combo_box_Change()
With Sheets("Contadores_Folios").Range("B2")
If Sheets("Banderas Sistema").Range("A2").Value <> "E" Then
Folio_Cotizacion.Text = IIf(Estatus_Combo_box.Text = "Esperando Aprobacion", "CO" + CStr(.[B2] + 1), "")
Folio_Obra.Text = IIf(Estatus_Combo_box.Text = "Esperando Aprobacion", "", "OB" + CStr(.[C2] + 1))
End If
End With
call bloquear_lista_se
Cotizaciones_y_obras.ListBox3.Locked = False
End Sub
非常感谢!
答案 0 :(得分:0)
我没有看到任何多重... ??
您可以简化代码,使调试更容易:
Private Sub Estatus_Combo_box_Change()
With Sheets("Contadores_Folios").Range("B2").Value
If Sheets("Banderas Sistema").Range("A2").Value <> "E" Then
Folio_Cotizacion.Text = IIf(Estatus_Combo_box.Text = "Esperando Aprobacion", "CO" + CStr(.[B2] + 1), "")
Folio_Obra.Text = IIf(Estatus_Combo_box.Text = "Esperando Aprobacion", "", "OB" + CStr(.[C2] + 1))
End If
End With
bloquear_lista_se
ListBox3.Locked = False
End Sub