Запись в файл Excel с текстовым шаблоном в C#
Я хочу написать файл шаблона (*.tt) для записи данных в файл XLS в C#. Как я могу записать данные в отдельные столбцы? Например, я хочу файл Excel с 3 столбцами, как показано ниже
column1 column2 column3
sss ttt rrr
www qqq aaa
но я не могу вставить их в отдельный столбец
<#= "sss " #><#= "ttt " #><#= "," #><#= "rrr" #>
<#= "www " #><#= "qqq " #><#= "," #><#= "aaa" #>
и вывод в файл Excel выглядит следующим образом
column1
sss ttt rrr
www qqq aaa
и все данные вставляются в первый столбец
1 ответ
Если вы решите использовать Excel Interop, то ниже приведена демонстрация размещения данных в отдельных столбцах рабочего листа Excel. Вы можете сослаться на это для более подробной информации об объектной модели Excel.
using Excel = Microsoft.Office.Interop.Excel;
namespace ExcelInterop
{
class Program
{
static void Main(string[] args)
{
Excel.Application xlApp = null;
Excel.Workbook xlWorkBook = null;
xlApp = new Excel.Application();
xlWorkBook = xlApp.Workbooks.Add();
Excel.Worksheet newWorksheet = null;
newWorksheet = (Excel.Worksheet)xlApp.Application.Worksheets.Add();
xlApp.ScreenUpdating = false;
Excel.Range excelRange = newWorksheet.UsedRange;
// Column 1
excelRange.Cells.set_Item(1, 1, "Column 1");
// Column 1 Data
excelRange.Cells.set_Item(2, 1, "sss");
// Column 2
excelRange.Cells.set_Item(1, 2, "Column 2");
// Column 1 Data
excelRange.Cells.set_Item(2, 2, "ttt");
// Save it as .xls
newWorksheet.SaveAs("D:\\ExcelInterop", Excel.XlFileFormat.xlExcel7);
// Clean up
xlWorkBook.Close();
xlApp.Quit();
System.Runtime.InteropServices.Marshal.ReleaseComObject(xlWorkBook);
System.Runtime.InteropServices.Marshal.ReleaseComObject(xlApp);
}
}
}