2015-03-06 2 views
0

Можно ли написать формулы по диапазону в Excel из VB.Net? Я использую массив String для хранения списка формул, которые я хотел бы применить к диапазону Excel, вместо того, чтобы перебирать их и записывать их по одному.Написание формулы в диапазон Excel с опцией Strict On

Эта линия, что я пытаюсь использовать для записи в диапазоне:

xlWorkSheet.Range("AF" & intCurrentRow.ToString & ":AG" & intCurrentRow.ToString).Formula = formulas 

формула записывается в Excel, но Excel на самом деле отображает формулу, вместо вычисленного значения. Если я пишу каждую формулу в каждую ячейку следующим образом:

xlWorkSheet.Range("AF" & intCurrentRow.ToString).Formula = formulas(0) 
xlWorkSheet.Range("AG" & intCurrentRow.ToString).Formula = formulas(1) 

Это прекрасно работает, и Excel отображает вычисленные значения, как следует. Почти похоже, что я пропускаю шаг, но я не смог найти что-либо в своих исследованиях.

ответ

1

Как только я ударил по почте, я понял проблему. Вместо использования свойства .Formula файла Excel.Range вместо этого вы должны использовать свойство .FormulaArray.

xlWorkSheet.Range("AF" & intCurrentRow.ToString & ":AG" & intCurrentRow.ToString).FormulaArray = formulas 
Смежные вопросы