c++ builder 写入excel初探

// 在安装完c++ builder中,在不用第三方库的情况下,进行excel写入,需要安装excel软件。

//需要有这行头文件 #include "Comobj.hpp"

//程序是可以运行的。

//新建个窗体程序,在画面上放1个按钮,双击按钮,添加如下程序。

 Variant my_excel;//应用
  Variant all_workbooks;//工作薄集合
  Variant my_workbook;//工作薄
  Variant my_worksheets;//表单集合
  Variant my_worksheet; //表单
  Variant my_cell; //单元格
  Variant temp;
  Variant New_sheet; //表单;
   try
    {
     my_excel=CreateOleObject("excel.Application");//启动Excel
    }
    catch(...)
    {
     //MessageBox(GetFocus(),"无法启动Excel","警告",MB_OK|MB_ICONSTOP);
     Abort();
    }
    all_workbooks=my_excel.OlePropertyGet("WorkBooks");
    Procedure Open("Open");
    my_excel.OlePropertySet("Visible",(Variant)true); //使Excel启动后可见
    my_workbook=all_workbooks.OleFunction("Add");//新建一个工作薄
    my_workbook=my_excel.OlePropertyGet("ActiveWorkbook");//设建立的工作薄为活动工作薄
    my_worksheets = my_workbook.OlePropertyGet("Sheets");//获得表单集合
    int n=my_worksheets.OlePropertyGet("Count");//获取表单总数
    for (int i = 0; i < n; i++)//遍历所有表单,这里只有1个表格
    {    //由索引获得表格,索引从1开始
        my_worksheet= my_workbook.OlePropertyGet("Sheets", i+1);
    }
    AnsiString SheetName = my_worksheet.OlePropertyGet("Name");//读取表单的名称
    OutputDebugStringA(SheetName.c_str());
    WideString str="1";
    my_worksheet.OlePropertySet("Name",str);//设定表单的名称
    my_cell=my_excel.OlePropertyGet("Cells",1,1);//获得单元格
    my_cell.OlePropertySet("Value",Variant(str)); //设定单元格的值
  

     //新建的表单,在my_worksheet之后            

     my_worksheets.OleProcedure("Add",temp.NoParam(),my_worksheet);                                           

     New_sheet= my_workbook.OlePropertyGet("Sheets", 2);//取得刚才建的表格
     New_sheet.OlePropertySet("Name",WideString("2"));//设定表单的名称
     my_excel.OleFunction("Quit");

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在Linux的C++写入Excel文件,可以使用一些第三方库来实现,比如LibXL和Aspose.Cells。LibXL是一个功能强大的库,可以帮助您将数据导出到Excel文件或从中提取数据,支持Excel的多种格式,包括xls和xlsx/xlsm。它可以用于C、C++、C#等多种语言。您可以在demo.xls或demo.xlsx文件中查看库的功能。\[1\] 另外,还有一些其他的第三方库可以用于在Linux的C++写入Excel文件,比如BasicExcel、xlsx_reader和MiniExcel。您可以通过访问它们的GitHub页面或其他相关网站来获取更多信息和使用示例。\[2\] 如果您需要在脚本中获取文件的绝对路径,Linux提供了一个方便的命令叫做realpath。但是在Mac下没有这个命令,您可以使用pwd命令来获取当前工作目录的路径。\[3\] #### 引用[.reference_title] - *1* *2* [C++读写excel文件的的第三方库](https://blog.csdn.net/hfy1237/article/details/129895864)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [linux C++ 获取文件绝对路径](https://blog.csdn.net/weixin_33609654/article/details/116613215)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值