Нужно автоматизировать хруст Excel данных?

У меня есть процессы, запущенные в Windows XP / 7. Они генерируют еженедельные файлы данных .csv. У меня есть куча формул excel, которые хрустят числа для каждого .csv-файла, созданного на неделю отдельно, а затем при добавлении еженедельных данных в одну большую электронную таблицу, содержащую все собранные данные.

Количество строк меняется каждую неделю и для каждого процесса. Поэтому я не могу жестко кодировать это число в моих десятках формул. Поэтому прямо сейчас я просматриваю этот глупый процесс ввода каждой формулы в каждую неделю в CSV-файлы.

Должен быть способ автоматизировать это. Только сейчас я быстро занялся этим с помощью кода C # или VB. Может ли кто-нибудь рекомендовать лучший способ сделать это. Является ли C # или VB правильным способом? Если да, то какие намеки на то, как собрать все это вместе – какая модель использовать? Например, будет ли он выглядеть примерно так:

  • Модуль C # читает файл CSV-данных
  • Модуль C # создает электронную таблицу Excel и заполняет ее данными .csv
  • Модуль C # запускает мои формулы по всем строкам.

Так можно подойти к нему? Есть ли лучший способ для тех, кто имеет очень ограниченное знание C # или VB? Я знаю Java и C ++.

Любые советы будут высоко оценены.

благодаря

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

Итак, для каждого процесса, который генерирует данные, вы говорите, что формулы всегда одинаковы, а это значит, что столбцы всегда одинаковы (я прав?).

Таким образом, даже если вы не знаете, сколько строк данных, вы все равно можете создать шаблон, где только первая строка заполнена формулами, а затем вы просто копируете эту строку снова и снова, заполняя ее данными по мере необходимости, или вы можете заполнить относительно «удобное» количество строк теми же формулами и заполнить данные.

Есть тонны атрикулов о том, как взаимодействовать с Excel, поэтому я не могу представить вам конкретный код, но идея хорошая.

Если я могу позволить себе, я работал в прошлом с очень интересным вызовом инструмента Flexcel Studio для .NET , и я нашел, что это очень помогает, когда дело доходит до создания листов Excel на основе таких шаблонов.

ура

Как и другие, я рекомендовал бы, если это было возможно, выполнить расчеты вне Excel. Существует множество библиотек статистики, которые более дружелюбны для работы, чем преодоление трудностей перемещения данных в excel, применения формул к диапазонам ячеек и т. Д.

Если вы действительно хотите перейти по маршруту excel, вы можете использовать библиотеки с открытым исходным кодом, такие как EPPLUS (.NET) или POI (Java), чтобы напрямую работать с файлами .XLSX. Некоторые библиотеки не поддерживают функцию оценки функций, поэтому вам нужно будет рассмотреть это при выборе библиотеки для использования.

Если вы перейдете к COM-взаимодействию , вы должны прочитать примерно следующее: Соображения для серверной автоматизации Office .

Что касается C # или VB (если не java с POI), я бы пошел с C #. Синтаксис C # похож на java.

Это может быть очень простое решение этой проблемы.

Добавьте 1 часть вспомогательных данных в файл .csv либо программно при запуске моего процесса, либо при создании файла .xlsx (со всеми формулами) из CSV-файла. Вспомогательной частью данных является количество строк, которое будет находиться в некотором известном месте.

Затем измените все мои формулы, чтобы использовать функцию INDIRECT, чтобы указать диапазон, используя ячейку со вспомогательной частью данных.

Я думаю, что это может сработать.

  • Как импортировать данные из Excel, у которых нет первичного ключа в базе данных, используя C #
  • обновление таблицы Excel в C #
  • Создайте новый лист excel с файловым потоком из c # reportviewer
  • Excel get_range
  • Как разрешить «Исключение из HRESULT: 0x800A03EC» при окрашивании конкретных ячеек листа Excel?
  • Доступ к листу Excel через C в linux
  • Экспортировать данные сетки в пользовательский элемент управления, чтобы преуспеть при нажатии кнопки
  • Экспортировать и загружать из защищенной таблицы Excel
  • c # Ошибка ввода в Excel, когда строковые данные больше 255 символов
  • C ++ сопряжение с Excel 2016 - ошибка c1084: невозможно прочитать файл библиотеки типов: Excel.exe
  • Отключение от Microsoft Excel Interop без сбоя программы на C #
  • Давайте будем гением компьютера.