我想制作一个 Windows 窗体应用程序。您可以在 textBox'es 中写入文本,当您按下按钮时,应用程序将创建一个 excel 文件并从框中写入文本。我只完成了 UI,我知道一些基础知识,但我不知道如何结合 MS Visual C++ 和 Excel。
问问题
4906 次
2 回答
3
这个答案中列出了很多库: 什么是用于处理 Excel 文件的简单可靠的 C 库?
此外“ExcelFormat Library”是基本的,但听起来它会做你需要的一切。它是免费且易于使用的。
Number Duck是我创建的一个商业图书馆。
于 2013-08-20T05:11:46.417 回答
1
这是取自https://code.google.com/p/excellibrary/的 C# 代码,在 VC++ 中使用此代码并使其工作。:) 语法不同,但如果你仔细想想,你会发现它们都是一样的。;) 首先,您必须下载 ExcelLibrary.dll 文件并将其添加到参考项目中。比添加这两行: using namespace ExcelLibrary::CompoundDocumentFormat; 使用命名空间 ExcelLibrary::SpreadSheet;
该项目的目的是提供一个本地 .NET 解决方案来创建、读取和修改
Excel 文件,而无需使用 COM 互操作或 OLEDB 连接。
目前已实现 .xls (BIFF8) 格式。将来也可能支持 .xlsx (Excel 2007)。
Example code:
//create new xls file
string file = "C:\\newdoc.xls";
Workbook workbook = new Workbook();
Worksheet worksheet = new Worksheet("First Sheet");
worksheet.Cells[0, 1] = new Cell((short)1);
worksheet.Cells[2, 0] = new Cell(9999999);
worksheet.Cells[3, 3] = new Cell((decimal)3.45);
worksheet.Cells[2, 2] = new Cell("Text string");
worksheet.Cells[2, 4] = new Cell("Second string");
worksheet.Cells[4, 0] = new Cell(32764.5, "#,##0.00");
worksheet.Cells[5, 1] = new Cell(DateTime.Now, @"YYYY\-MM\-DD");
worksheet.Cells.ColumnWidth[0, 1] = 3000;
workbook.Worksheets.Add(worksheet);
workbook.Save(file);
// open xls file
Workbook book = Workbook.Load(file);
Worksheet sheet = book.Worksheets[0];
// traverse cells
foreach (Pair<Pair<int, int>, Cell> cell in sheet.Cells)
{
dgvCells[cell.Left.Right, cell.Left.Left].Value = cell.Right.Value;
}
// traverse rows by Index
for (int rowIndex = sheet.Cells.FirstRowIndex;
rowIndex <= sheet.Cells.LastRowIndex; rowIndex++)
{
Row row = sheet.Cells.GetRow(rowIndex);
for (int colIndex = row.FirstColIndex;
colIndex <= row.LastColIndex; colIndex++)
{
Cell cell = row.GetCell(colIndex);
}
}
于 2014-06-01T20:05:46.603 回答