Вопрос 1: Данные для экспорта в Excel подготовлены с использованием двумерного объекта массива в моем коде vb.net. При попытке назначить этот объект массива свойствам ExcelRange.Value или .Value2 он отлично работает, за исключением случаев, когда длина текста любого экспортируемого значения ячейки превышает 8203 (она выдает исключение из msg «Исключение из HRESULT: 0x800A03EC»)Экспорт данных в excel
Вопрос 2: Принимая во внимание, что с использованием свойства excelrange.FormulaArray возникает ошибка с сообщением «Невозможно установить свойство FormulaArray класса Range». Но он отлично работает в vb6, используя строковый массив. В чем причина? Ниже приводится подробная ошибка при использовании excelrange.FormulaArray свойству
System.Runtime.InteropServices.COMException was caught
ErrorCode=-2146827284
HelpLink="C:\Program Files (x86)\Microsoft Office\Office12\1033\XLMAIN11.CHM"
Message="Unable to set the FormulaArray property of the Range class"
Source="Microsoft Office Excel"
StackTrace:
at System.RuntimeType.ForwardCallToInvokeMember(String memberName, BindingFlags flags, Object target, Int32[] aWrapperTypes, MessageData& msgData)
at Excel.Range.set_FormulaArray(Object)
at globalmodule.modglobconstant.ExportMsfgToExcel(AxMSFlexGrid& Msfg1, Boolean& flg, String FileName1)
InnerException:
Любых других альтернативных метод экспорта в Excel/Решение этой проблемы было бы значительно оценен
Я создал простой код в макросе excel, который демонстрирует ошибку, которую я получаю. Загрузите файл здесь [link] (http://incometaxsoft.com/pdf/test1.xlsm) Здесь у меня есть wriiten simple excel macro с значениями обновления ячейки A10 от A1. Так как A1 содержит текст длины (более 8000 символов), поэтому его не обновлять в A10 –
В макросе я написал два case.one для случая с ошибкой, а другой для обычного case.you может прокомментировать строку и увидеть ошибку. –