任何錯誤解決方案從Excel驗證0x800A03EC通過vb.net自動執行時發生。Excel驗證錯誤HRESULT:0x800A03EC當從Vb.net自動執行時
注意:相同的代碼在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中的單元格中,請使用以下格式: –
歡迎使用[so]。我敢打賭,你做錯了,在這裏看到我是如何得到一個國家幫助修復相同的錯誤信息:http://stackoverflow.com/questions/13908505/how-to-add-number-validation-in-ms- excel-cell-using-c-sharp - 注意'Formula1:=「= $ X $ 2:$ X $」&lastrow_main'中的值。由於其間歇性,您可能必須註銷該值才能重現該值。 –
只是一個友善的負責人,[so]是一個非常活躍的網站,你應該在詢問後稍微留意一下。祝你好運 :) –