Работа с Excel в C#
Всем доброго времени суток. На связи Алексей Гулынин. В данной статье я бы хотел рассказать о том, как работать с Microsoft Excel, используя язык C#. Для этого в проект необходимо добавить ссылку на библиотеку Microsoft Excel Object Library. Версия библиотеки будет зависеть от того, какая версия офиса у вас установлена. Давайте реализуем следующий пример: необходимо в ячейки первой строки записать числа от 1 до 10, на второй строке в первой ячейке посчитать их сумму, используя формулу в Excel. Также у данной ячейки необходимо выделить границы.
Также в данном примере я хочу показать, как строить круговую диаграмму в Excel на C# и заполнять её данными.
Сразу приведу код:
using Excel = Microsoft.Office.Interop.Excel; namespace TestProjectExcel { class Program { static void Main(string[] args) { // Создаём экземпляр нашего приложения Excel.Application excelApp = new Excel.Application(); // Создаём экземпляр рабочий книги Excel Excel.Workbook workBook; // Создаём экземпляр листа Excel Excel.Worksheet workSheet; workBook = excelApp.Workbooks.Add(); workSheet = (Excel.Worksheet)workBook.Worksheets.get_Item(1); // Заполняем первую строку числами от 1 до 10 for (int j = 1; j <= 10; j++) { workSheet.Cells[1, j] = j; } // Вычисляем сумму этих чисел Excel.Range rng = workSheet.Range["A2"]; rng.Formula = "=SUM(A1:L1)"; rng.FormulaHidden = false; // Выделяем границы у этой ячейки Excel.Borders border = rng.Borders; border.LineStyle = Excel.XlLineStyle.xlContinuous; // Строим круговую диаграмму Excel.ChartObjects chartObjs = (Excel.ChartObjects)workSheet.ChartObjects(); Excel.ChartObject chartObj = chartObjs.Add(5, 50, 300, 300); Excel.Chart xlChart = chartObj.Chart; Excel.Range rng2 = workSheet.Range["A1:L1"]; // Устанавливаем тип диаграммы xlChart.ChartType = Excel.XlChartType.xlPie; // Устанавливаем источник данных (значения от 1 до 10) xlChart.SetSourceData(rng2); // Открываем созданный excel-файл excelApp.Visible = true; excelApp.UserControl = true; } } }
В данной статье вы немного познакомились с тем, как работать с Excel, используя C#.
В статьях, посвященных вставке текста в Word, используя закладки (Bookmarks) мы познакомились с технологиями OpenXML и GemBox. С файлами Excel эти технологии также успешно работают, а OpenXML является предпочтительным вариантом работы, так как бесплатен и не требует установки Microsoft Excel. Возможно в следующих статьях рассмотрим пару примеров.
На связи был Алексей Гулынин, оставляйте свои комментарии, увидимся в следующих статьях.