Qt之操作Excel

//写入
    QXlsx::Document xlsx;
    if(!xlsx.selectSheet("ziv"))//选择表格,若不存在,则新建一张
    {
        xlsx.addSheet("ziv");
    }
    xlsx.write("A1", "View the properties through:");
    xlsx.write("A2", "Office Button -> Prepare -> Properties option in Excel");
    if(!xlsx.selectSheet("agv"))
    {
        xlsx.addSheet("agv");
    }
    xlsx.write("A1","ip");
    xlsx.write("A2","192.168");
    xlsx.saveAs("book1.xlsx"); //添加后,必须保存至表格中
    QXlsx::CellRange range;//获取表格的行数、列数
    range=xlsx.dimension();
    int rowCount = range.rowCount() ; //行数
    int colCount = range.columnCount() ; //列数
    //更新某一行
    for(int i=1; i<rowCount+1; i++)
    {
        if ( xlsx.cellAt( i ,1)->value().toString()=="192.168" )
        {
            xlsx.write(i,1,"192.168.31");
        }
    }
    xlsx.saveAs("book1.xlsx");//更新后一定要保存
    xlsx1.selectSheet("agv");
    //读取agv表中的所有信息
    for (int  i = 1; i <=rowCount; i++)
    {
        for (int j=1; j<=colCount; j++)
        {
            qDebug() << i  <<j <<xlsx1.cellAt(i, j)->value().toString() ;
        }
    }
    qDebug() << rowCountt <<colCountt <<xlsx1.currentSheet()->sheetName();//打印出表单的名字
    
    bool flag=  xlsx.deleteSheet("agv");//删除某一表,删除后必须保存
    if(flag)
    {
        qDebug() <<"true" ;
    }
    else
    {
        qDebug() <<"false" ;
    }
    xlsx.saveAs("book1.xlsx");
    xlsx.copySheet("ziv","chen");//无格式拷贝
    xlsx.selectSheet("chen");
    xlsx.write(4,2,"On the Copy Sheet");
    xlsx.saveAs("book1.xlsx");
    //读取
    QXlsx::Document xlsx1("book1.xlsx");
    xlsx1.selectSheet("ziv");
    QStringList sheetname_tmp = xlsx1.sheetNames();//表单名
    qDebug() << "表单名" <<sheetname_tmp;
    QString tmp = sheetname_tmp.join(",");
    qDebug() <<"tmp" << tmp;
    xlsx1.selectSheet("ziv");
    qDebug()<<xlsx1.read("A1").toString()<<xlsx1.read("A2").toInt()<<xlsx1.read("A3").toBool();
 
若想判断单元格是不是空白
 QString filepath=  "D:/LgvResource/dxfInfo.xlsx" ;
    QXlsx::Document xlsx(filepath);//读取excel
    //选择表SiteInfo //ID、posX、posY、nature、startx、starty width height
    if(!xlsx.selectSheet("SiteInfo"))
    {
        qDebug()<<"表格不存在"+filepath + "SiteInfo";
        return;
    }
    QXlsx::Cell *cell = xlsx.cellAt(2,1);
    if(cell == NULL)
    {
        qDebug()<<"null";
    }
    else {
        qDebug()<<cell->value().toString();
    }


                
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值