В формулу дает записать только строку длиной 1512 символа. Пробовал на английском писать в Formula, FormulaR1C1, Value Всегда появляется ошибка 0x800A03EC
Причем на одном компьютере есть ошибка, а на другом нет Excel.Version() - на обоих компах 15.0 (Excel 2013)
Как обойти ограничение и почему на одном компе работает а на другом нет?
[vba]
Код
Excel = Новый COMОбъект("Excel.Application"); Excel.Application.DisplayAlerts = False; Excel.WorkBooks.Open(ПутьДоФайла);
В формулу дает записать только строку длиной 1512 символа. Пробовал на английском писать в Formula, FormulaR1C1, Value Всегда появляется ошибка 0x800A03EC
Причем на одном компьютере есть ошибка, а на другом нет Excel.Version() - на обоих компах 15.0 (Excel 2013)
Как обойти ограничение и почему на одном компе работает а на другом нет?Zixxx
Сообщение отредактировал Zixxx - Пятница, 19.03.2021, 19:40
В том то и дело что в файле работает, ошибка возникает в процессе заполнения файла програмно, причем только на одном компе (но именно на нем это и должно формироваться)
В том то и дело что в файле работает, ошибка возникает в процессе заполнения файла програмно, причем только на одном компе (но именно на нем это и должно формироваться)Zixxx
В формулу дает записать только строку длиной 1512 символа
не пробовали использовать промежуточные переменные? Скажем [vba]
Код
a="ЕСЛИ(ЕЧИСЛО(R1C);R1C;0)"'здесь строка до 1512 символов b="ЕСЛИ(ЕЧИСЛО(R2C);R2C;0)"'здесь вторая часть до 1512 символов Лист.Cells(1,1).FormulaR1C1Local = "=" & a & "+" & b
В формулу дает записать только строку длиной 1512 символа
не пробовали использовать промежуточные переменные? Скажем [vba]
Код
a="ЕСЛИ(ЕЧИСЛО(R1C);R1C;0)"'здесь строка до 1512 символов b="ЕСЛИ(ЕЧИСЛО(R2C);R2C;0)"'здесь вторая часть до 1512 символов Лист.Cells(1,1).FormulaR1C1Local = "=" & a & "+" & b
ошибка возникает в процессе заполнения файла програмно,
если уже заполненное работает, то посмотрите что там в формуле через VBA, пропшите тоже самое через код для проверки. буквально
Код
Лист1.Cells(1,1).Formula=Лист.Cells(1,1).Formula
Если не получится, то проблема в Excel и его нужно подлечить. А вот если пройдет, то сравнивайте тем что вы пихаете. да и используйте именно .Formula . Придется перевести функции, но это исключит много проблем.
ошибка возникает в процессе заполнения файла програмно,
если уже заполненное работает, то посмотрите что там в формуле через VBA, пропшите тоже самое через код для проверки. буквально
Код
Лист1.Cells(1,1).Formula=Лист.Cells(1,1).Formula
Если не получится, то проблема в Excel и его нужно подлечить. А вот если пройдет, то сравнивайте тем что вы пихаете. да и используйте именно .Formula . Придется перевести функции, но это исключит много проблем.bmv98rus
Замечательный Временно просто медведь , процентов на 20.