54 lines
1.3 KiB
C#
54 lines
1.3 KiB
C#
|
using System.ComponentModel;
|
|||
|
using System.Runtime.InteropServices;
|
|||
|
using Excel = Microsoft.Office.Interop.Excel;
|
|||
|
|
|||
|
namespace CustomComponents
|
|||
|
{
|
|||
|
public partial class BigTextComponent : Component
|
|||
|
{
|
|||
|
|
|||
|
public BigTextComponent()
|
|||
|
{
|
|||
|
InitializeComponent();
|
|||
|
}
|
|||
|
|
|||
|
public BigTextComponent(IContainer container)
|
|||
|
{
|
|||
|
container.Add(this);
|
|||
|
|
|||
|
InitializeComponent();
|
|||
|
}
|
|||
|
|
|||
|
public void CreateExcel(string file, string title, string[] text)
|
|||
|
{
|
|||
|
if (string.IsNullOrEmpty(file))
|
|||
|
throw new ArgumentException("Не указан путь к файлу");
|
|||
|
|
|||
|
if (string.IsNullOrEmpty(title))
|
|||
|
throw new ArgumentException("Не указан заголовок документа");
|
|||
|
|
|||
|
if (text == null || text.Length == 0)
|
|||
|
throw new ArgumentException("Массив с текстом пуст либо null");
|
|||
|
if (File.Exists(file)) { File.Delete(file); }
|
|||
|
|
|||
|
var xlApp = new Excel.Application();
|
|||
|
Excel.Workbook xlWorkBook = xlApp.Workbooks.Add();
|
|||
|
Excel.Worksheet xlWorkSheet = (Excel.Worksheet)xlWorkBook.Sheets[1];
|
|||
|
xlWorkSheet.Cells[1, 1] = title;
|
|||
|
|
|||
|
for (int i = 0; i < text.Length; i++)
|
|||
|
{
|
|||
|
xlWorkSheet.Cells[i + 3, 1] = text[i];
|
|||
|
}
|
|||
|
|
|||
|
xlApp.Application.ActiveWorkbook.SaveAs(file);
|
|||
|
xlWorkBook.Close(true);
|
|||
|
xlApp.Quit();
|
|||
|
|
|||
|
Marshal.ReleaseComObject(xlApp);
|
|||
|
|
|||
|
MessageBox.Show("Документ успешно создан!");
|
|||
|
}
|
|||
|
}
|
|||
|
}
|