Как корректно отформатировать таблицу Excel, используя C#

174
11 декабря 2018, 16:00

Всем привет! Появилась задача из полученных данных перекинуть в таблицу и её отформатировать Есть такой вот код:

       Excel.Application oApp;
        Excel.Worksheet oSheet;
        Excel.Workbook oBook;
        oApp = new Excel.Application();
        oBook = oApp.Workbooks.Add();
        oSheet = (Excel.Worksheet)oBook.Worksheets.get_Item(1);
        oSheet.Cells[1, "A"] = "Микроклимат";
        oSheet.Cells[2, "A"] = "Зал 302";
        oSheet.Cells[4, "A"] = "Стойка";
        oSheet.Cells[2, "B"] = "Июль 2018";
        oSheet.Cells[3, "B"] = " ";
        oSheet.Cells[3, "C"] = "Темп, ⁰";
        oSheet.Cells[3, "D"] = "Влажн, %";
        oSheet.Cells[4, "B"] = "Мин.";
        oSheet.Cells[5, "B"] = "Макс.";
        oSheet.Cells[6, "B"] = "Сред.";
        oSheet.Cells[4, "C"] = minValue;
        oSheet.Cells[5, "C"] = maxValue;
        oSheet.Cells[6, "C"] = avgValue;
        if (File.Exists(file))
        {
            File.Delete(file);
        }
        oBook.SaveAs(file);
        oBook.Close();
        oApp.Quit();
        Console.WriteLine("Табилца выгружена");

minValue, avgValue и maxValue - переменные типа String (их значения получаю методом парсинга API).

В итоге, выгружается такая таблица -

Необходимо ей придать такой вид -

Как можно реализовать? Заранее, огромное спасибо! :)

Answer 1

Подготовьте заранее шаблон. Загрузите шаблон средствами библиотеки EPPlus, заполните нужные поля и сохраните документ. Ниже код, который вам поможет с освоением библиотеки.

public ExcelPackage xlPackage;
public ExcelWorksheet worksheet;
public void InitializeTemplate()
        {
            xlPackage = new ExcelPackage(OutputRepoPath, InputTemplatePath);
        }
 public void SaveTemplate()
        {
            xlPackage.Save();

        }
public void AddCellValue(ExcelPackage xlApp, string SheetName, string CellPosition, object value)
       {
           worksheet = xlApp.Workbook.Worksheets[SheetName];
           if (worksheet == null)
           {
               worksheet = xlApp.Workbook.Worksheets.Add(SheetName); // add a new worksheet to the empty workbook    
           }

           worksheet.Cells[CellPosition].Value = value;

       }
READ ALSO
listbox ложное действие

listbox ложное действие

При нажатии на элемент listboxа открывается новая форма, но также это происходит(ложное срабатывание) после заполнение listboxа командой listBox4DataSource...

165
Ошибка при создании скрипта

Ошибка при создании скрипта

При создании нового скрипта юнити пишет "No MonoBehaivour scripts in the file, or their names do not match the file name"

175
Как вывести хэш таблицу имеющую один ключ и несколько значений?

Как вывести хэш таблицу имеющую один ключ и несколько значений?

После этого вопроса, сразу возник следующийЕсли в хеш-таблице ключ имеет несколько значений, то как их все сразу вывести?

231
Динамическое изменение SolidColorBrush в App.xaml

Динамическое изменение SolidColorBrush в App.xaml

Пытаюсь добавить настройку цветов в программе (по нажатию кнопки) для этого использую Solidcolorbrush(прописаны в Appxaml), но я не знаю как обратиться...

119