读取word中表格的数据

这篇博客介绍了如何在C++环境中利用Qt的QAxObject类与COM接口来操控Microsoft Word,具体步骤包括创建Word应用程序对象、打开文档、获取活动表格以及读取表格中的信息。通过示例代码详细展示了如何读取表格的行数和列数,并遍历所有单元格,提取文本信息。
摘要由CSDN通过智能技术生成
  1. 在pro文件中加入
    QT += axcontainer
  2. 按步骤:
    1)创建Word应用程序对象;
    2)获取文档集;
    3)打开文档;
    4)获取活动表格;
    5)读取表格中的信息;
    QAxObject *myword = new QAxObject("Word.Application");//1)创建Word应用程序对象;
    QAxObject *mydocs = myword->querySubObject("Documents");//2)获取文档集;
    mydocs->dynamicCall("Open(const QString&)","C:\\Users\\Public\\Documents\\1.docx");//3)打开文档;
    QAxObject *document = myword->querySubObject("ActiveDocument");//4)获取活动表格;
    QAxObject *mytable = document->querySubObject("Tables(int)",table);
    
     	int rows = mytable->querySubObject("Rows")->dynamicCall("Count").toInt();
    	int cols = mytable->querySubObject("Columns")->dynamicCall("Count").toInt();
    	qDebug()<<"table:"<<table<<" rows:"<<rows<<" column:"<<cols;
        for(int i = 1; i < rows + 1; i++ )
            for(int j = 1; j < cols + 1; j++)
            {
                QAxObject *item = mytable->querySubObject("Cell(int,int)",i,j);// 5)读取表格中的信息;
                QString itemString = item->querySubObject("Range")->property("Text").toString();
                               qDebug()<<itemString;
            }        
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值