#excel #ssis
#excel #ssis
Вопрос:
Я использую SSIS для записи данных из источника SQL в целевое приложение Excel. Подключение жестко закодированных значений — это нормально. Однако меня попросили поместить формулы в SUM () в последний столбец. Им нужна фактическая формула, а не суммированное значение, что я мог бы сделать на стороне SSIS.
Я написал формулу, которая работала, и добавил ее в качестве дополнительного столбца в моем преобразовании данных:
"=SUM(OFFSET($A$1,ROW()-1,3,1,9))"
ОДНАКО, когда я открываю свою целевую электронную таблицу, эта формула просто подключается в виде текста. Он не будет вычисляться, если я явно не отредактирую ячейку (просто щелкните на входе и выходе). F9, Shift-F9 и т.д. Не работают.
Я почти уверен, что нет способа преодолеть это, но я решил проверить. Я открыт для других решений. Я не могу предварительно заполнить формулы, поскольку объем добавляемых данных является переменным.
Я должен также упомянуть, что я не хочу использовать какое-либо решение, требующее манипулирования Excel через библиотеку взаимодействия. Весь смысл этого упражнения в том, чтобы прекратить использование Excel на сервере, чтобы я мог установить только соответствующий драйвер, а не сам Excel.
Комментарии:
1. удалите двойные кавычки и измените формат номеров ячеек на
General
2. Если вы не хотите использовать interop, то вы, вероятно, правы, это невозможно сделать.