爱新觉罗二狗 2023-08-31 11:03 采纳率: 40%
浏览 3

qt中使用QAxObject读取excel文件可以读取到单元格的背景颜色吗

qt中使用QAxObject读取excel文件可以读取到单元格的背景颜色吗
网上教程都只有设置颜色的

  • 写回答

1条回答 默认 最新

  • CSDN-Ada助手 CSDN-AI 官方账号 2023-08-31 14:05
    关注

    【以下回答由 GPT 生成】

    回答:

    可以通过QAxObject的Range对象的Interior属性来获取单元格的背景颜色。

    下面是一个示例代码, 借助于VBA,在Qt中通过QAxObject读取Excel文件,并获取A1单元格的背景颜色:

    #include <QAxObject>
    #include <QDebug>
    
    int main()
    {
        QAxObject excel("Excel.Application");
        excel.setProperty("Visible", false);
    
        QAxObject *workbooks = excel.querySubObject("Workbooks");
        QAxObject *workbook = workbooks->querySubObject("Open(const QString&)", "yourfile.xlsx");
    
        QAxObject *sheets = workbook->querySubObject("Sheets");
        QAxObject *sheet = sheets->querySubObject("Item(int)", 1); // 第1个Sheet
    
        QAxObject *range = sheet->querySubObject("Range(const QString&)", "A1");
        QAxObject *interior = range->querySubObject("Interior");
    
        QVariant backgroundColor = interior->property("Color");
    
        qDebug() << "背景颜色:" << backgroundColor.toString();
    
        delete interior;
        delete range;
        delete sheet;
        delete sheets;
        delete workbook;
        delete workbooks;
    
        excel.dynamicCall("Quit()");
    
        return 0;
    }
    

    注意:上述代码需要在编译时链接Microsoft Excel相关库文件。

    希望对你有所帮助!如果还有其他问题,请随时提问。



    【相关推荐】



    如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^
    评论

报告相同问题?

问题事件

  • 创建了问题 8月31日

悬赏问题

  • ¥20 python爬虫遇到空文本取不出来
  • ¥15 x264库中预测模式字IPM、运动向量差MVD、量化后的DCT系数的位置
  • ¥15 curl 命令调用正常,程序调用报 java.net.ConnectException: connection refused
  • ¥20 关于web前端如何播放二次加密m3u8视频的问题
  • ¥15 使用百度地图api 位置函数报错?
  • ¥15 metamask如何添加TRON自定义网络
  • ¥66 关于川崎机器人调速问题
  • ¥15 winFrom界面无法打开
  • ¥30 crossover21 ARM64版本安装软件问题
  • ¥15 mymetaobjecthandler没有进入