В общем-то создаю программно Excel файл и записываю в него данные. Как объединить несколько ячеек в одну?
Вот так происходит создание и запись у меня:
private void CreateExcelDocument()
{
excelApp = new Excel.Application();
FileInfo fileInfo = new FileInfo(Application.StartupPath + "\\" + DateTime.Now.Year.ToString() + " " + DateTime.Now.Month.ToString() + ".xlsx");
if (fileInfo.Exists)
{
excelApp.Workbooks.Open(fileInfo.FullName);
workSheet = (Excel.Worksheet)excelApp.ActiveSheet;
curRow = workSheet.UsedRange.Rows.Count;
}
else
{
excelApp.Workbooks.Add();
workSheet = (Excel.Worksheet)excelApp.ActiveSheet;
curRow = 2;
workSheet.Cells[1, 8] = "Общая";
workSheet.Cells[1, 9] = "Общая";
workSheet.Cells[1, 10] = "Общая";
workSheet.Cells[1, 11] = "Общая";
workSheet.Cells[1, 15] = "Общая";
workSheet.Cells[1, 16] = "Общая";
workSheet.Cells[1, 17] = "Общая";
workSheet.Cells[2, 1] = "ФИО";
workSheet.Cells[2, 2] = "Данные1";
workSheet.Cells[2, 3] = "Данные2";
workSheet.Cells[2, 4] = "Данные3";
workSheet.Cells[2, 5] = "Данные4";
workSheet.Cells[2, 6] = "Данные5";
workSheet.Cells[2, 7] = "Данные6";
workSheet.Cells[2, 8] = "Данные7";
workSheet.Cells[2, 9] = "Данные8";
workSheet.Cells[2, 10] = "Данные9";
workSheet.Cells[2, 11] = "Данные10";
workSheet.Cells[2, 12] = "Данные11";
workSheet.Cells[2, 13] = "Данные12";
workSheet.Cells[2, 14] = "Данные13";
workSheet.Cells[2, 15] = "Данные14";
workSheet.Cells[2, 16] = "Данные15";
workSheet.Cells[2, 17] = "Данные16";
}
}
private void SaveAndQuit()
{
try
{
excelApp.ActiveWorkbook.SaveAs(Application.StartupPath + "\\" + DateTime.Now.Year.ToString() + " " + DateTime.Now.Month.ToString());
excelApp.Quit();
}
catch (Exception e)
{
excelApp.Quit();
}
}
private void WriteToExcel()
{
int i = 0;
curRow++;
i++;
workSheet.Cells[curRow, i] = RashodMatTextBoxFamil.Text;
((Excel.Range)workSheet.Columns[i]).AutoFit();
i++; // 2
workSheet.Cells[curRow, i] = label123.Text;
((Excel.Range)workSheet.Columns[i]).AutoFit();
i++; // 3
workSheet.Cells[curRow, i] = label124.Text;
((Excel.Range)workSheet.Columns[i]).AutoFit();
i++; // 4
workSheet.Cells[curRow, i] = label125.Text;
((Excel.Range)workSheet.Columns[i]).AutoFit();
i++; // 5
workSheet.Cells[curRow, i] = label126.Text;
((Excel.Range)workSheet.Columns[i]).AutoFit();
i++; // 6
workSheet.Cells[curRow, i] = label127.Text;
((Excel.Range)workSheet.Columns[i]).AutoFit();
i++; // 7
workSheet.Cells[curRow, i] = label128.Text;
((Excel.Range)workSheet.Columns[i]).AutoFit();
i++; // 8
workSheet.Cells[curRow, i] = label129.Text;
((Excel.Range)workSheet.Columns[i]).AutoFit();
i++; // 9
workSheet.Cells[curRow, i] = label130.Text;
((Excel.Range)workSheet.Columns[i]).AutoFit();
i++; // 10
workSheet.Cells[curRow, i] = label131.Text;
((Excel.Range)workSheet.Columns[i]).AutoFit();
i++; // 11
workSheet.Cells[curRow, i] = label143.Text;
((Excel.Range)workSheet.Columns[i]).AutoFit();
i++; // 12
workSheet.Cells[curRow, i] = label132.Text;
((Excel.Range)workSheet.Columns[i]).AutoFit();
i++; // 13
workSheet.Cells[curRow, i] = label133.Text;
((Excel.Range)workSheet.Columns[i]).AutoFit();
i++; // 14
workSheet.Cells[curRow, i] = label135.Text;
((Excel.Range)workSheet.Columns[i]).AutoFit();
i++; // 15
workSheet.Cells[curRow, i] = label138.Text;
((Excel.Range)workSheet.Columns[i]).AutoFit();
i++; // 16
workSheet.Cells[curRow, i] = label137.Text;
((Excel.Range)workSheet.Columns[i]).AutoFit();
i++; // 17
workSheet.Cells[curRow, i] = label136.Text;
((Excel.Range)workSheet.Columns[i]).AutoFit();
}
Объединить нужно ячейки H1-K1 и O1-Q1, подскажите как это делается программно. Буду очень благодарен
Попробуй так:
// Выделяем диапазон ячеек от H1 до K1
Excel.Range _excelCells1 = (Excel.Range)workSheet.get_Range("H1", "K1").Cells;
// Производим объединение
_excelCells1.Merge(Type.Missing);
workSheet.Cells[1, 8] = "Общие";
// Выделяем диапазон ячеек от O1 до Q1
Excel.Range _excelCells2 = (Excel.Range)workSheet.get_Range("O1", "Q1").Cells;
// Производим объединение
_excelCells2.Merge(Type.Missing);
workSheet.Cells[1, 15] = "Общие";
Задание такое: Создать программу, состоящую из textBox и кнопкиВ textBox вводятся любые слова в любом регистре, по нажатию на кнопку происходит запись...
Изначально, когда создаешь проект (а именно Приложение Windows Forms), доступен для редактирования файл Form1cs
В ViewModel имеется команда, которая запускает загрузку данных с порта и расшифровку их:
Необходимо экспортировать и импортировать в три формата (xml , json, yml)Как лучше это сделать? Помогите с примером и советом