【问题标题】:Excel Validation Error HRESULT:0x800A03EC when automated from Vb.net从 Vb.net 自动化时 Excel 验证错误 HRESULT:0x800A03EC
【发布时间】:2013-07-25 06:06:06
【问题描述】:

通过 vb.net 自动化时,Excel Validation 0x800A03EC 出现任何错误解决方案。

注意:相同的代码在 90% 的系统中运行,而在其他系统中运行相同的代码。

下面是我使用的代码:

For K = 2 To 1000
    objxl.Range("F" & K).FormulaR1C1 = "=IFERROR(VLOOKUP(RC[-2]&RC[-2],C[13]:C[14],2,0),"""")"
    Next
    i = 25
    objxl.Range("D2:D1000").Select()
    If lastrow_main = 2 Then
        lastrow_main = lastrow_main
    Else
        lastrow_main = lastrow_main - 1
    End If
    With objxl.Selection.validation
        .Delete()
        .Add(Type:=Excel.XlDVType.xlValidateList, AlertStyle:=Excel.XlDVAlertStyle.xlValidAlertStop, Operator:= _
        Excel.XlFormatConditionOperator.xlBetween, Formula1:="=$X$2:$X$" & lastrow_main & "")
        .IgnoreBlank = True
        .InCellDropdown = True
        .InputTitle = ""
        .ErrorTitle = ""
        .InputMessage = ""
        .ErrorMessage = ""
        .ShowInput = True
        .ShowError = True
    End With

【问题讨论】:

  • Microsoft Excel 返回此错误的原因有很多——最常见的原因是用户尝试写入的数据大于 Excel 可以处理的数据。例如,如果您尝试将长度超过 1024 个字符的字符串写入 Excel 中的单元格
  • 欢迎来到Stack Overflow。我敢打赌你做错了,在这里看看我是如何获得帮助修复相同错误消息的:stackoverflow.com/questions/13908505/… - 注意Formula1:="=$X$2:$X$" & lastrow_main 中的值。由于它是间歇性的,您可能必须注销该值才能重现它。
  • 请注意,Stack Overflow 是一个非常活跃的网站,您应该在询问后立即闲逛。祝你好运:)

标签: vb.net


【解决方案1】:

看这里:

Excel.XlFormatConditionOperator.xlBetween, Formula1:="=$X$2:$X$" & lastrow_mail

=$X$2:$X$" & lastrow_mail 必须是分隔的值字符串。例如 1 到 10:

Formula1:="1,2,3,4,5,6,7,8,9,10"

【讨论】:

    【解决方案2】:

    这很可能与他的一些用户使用与英语不同的语言运行 Excel 的事实有关。我遇到了同样的问题,并且一直在寻找答案。

    当使用带有 Validation.Add 的自定义公式时,Excel 似乎不会进行自动公式转换。

    我已经尝试过http://www.add-in-express.com/creating-addins-blog/2009/02/13/old-format-invalid-type-library/ 此处的建议http://msdn.microsoft.com/en-us/library/office/aa537159(v=office.11).aspx 在使用 Validation.Add 时它们都不起作用。

    我发现唯一可行的方法是您自己手动翻译函数名称。亲自维护所有函数名称的翻译并不是我真正想做的事情。我更喜欢使用 Excel 来翻译它们,或者像“VSTO”那样将它们设置为英文。

    【讨论】:

      猜你喜欢
      • 2018-06-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-12-31
      • 1970-01-01
      • 1970-01-01
      • 2013-03-13
      • 1970-01-01
      相关资源
      最近更新 更多