如何在VC ++中使用多个工作表创建Excel文件并保存。
答案 0 :(得分:1)
答案是XL->Worksheets->Add();
工作表按相反的顺序添加。
#import "C:\Program Files (x86)\Common Files\microsoft shared\OFFICE12\mso.dll"
#import "C:\Program Files (x86)\Common Files\microsoft shared\VBA\VBA6\VBE6EXT.OLB"
#import "C:\Program Files (x86)\Microsoft Office\Office12\excel.exe" \
rename("DialogBox","ExcelDialogBox") rename("RGB","ExcelRGB") \
exclude("IFont","IPicture")
#include <stdexcept>
#include <iostream>
int main()
{
CoInitialize(NULL);
try
{
Excel::_ApplicationPtr XL;
HRESULT hr = XL.CreateInstance(L"Excel.Application");
Excel::_WorkbookPtr workbook = XL->Workbooks->Add(Excel::xlWorksheet);
Excel::_WorksheetPtr worksheet = XL->ActiveSheet;
worksheet->Name = "last page";
worksheet = XL->Worksheets->Add(); // adding worksheets!!
worksheet->Name = "other page";
worksheet = XL->Worksheets->Add();
worksheet->Name = "some page";
worksheet->SaveAs("c:\\test.xls");
workbook->Close();
XL->Quit();
}
catch(_com_error &ce)
{
std::cout<<"caught" << std::endl;
}
CoUninitialize();
system("pause");
return 0;
}
答案 1 :(得分:0)
Excel从2003年开始支持XML。 XML可以有多个工作表。
您可以从VC ++生成XML文件。此Excel cab将由Excel打开为Excel工作表。
要查找XML的格式/结构,请创建一个Excel文件,并在几张纸中输入少数单元格的数据。然后将文件另存为XML。
您可以编写代码来生成类似的XML。
答案 2 :(得分:0)
请参阅Excel Object Model Overview和/或How to find and use Office object model documentation以找到要调用的正确方法。工作簿界面中的SaveAs和SaveCopyAs方法可能就是您要查找的内容。