Xlsx库的使用
pro文件中添加
QT += xlsx
头文件
#
QXlsx::Document xlsx; //创建xlsx对象 xlsx.write("A1", "Hello Qt!"); //在指定格写入文本 xlsx.saveAs("Test.xlsx"); //保存为文件 xlsx.saveAs("d:/Test.xlsx");
QXlsx::Document xlsx("lm.xlsx"); //打开一个xlsx文件,指定excel文件存在就打开,不存在创建一个新的对象 QXlsx::Format format1;// 创建单元格样式对象 format1.setFontColor(QColor(Qt::red)); //文字为红色 format1.setPatternBackgroundColor(QColor(0,0,255)); //背景颜色 format1.setFontSize(15); // 设置字体大小 format1.setHorizontalAlignment(QXlsx::Format::AlignHCenter); //横向居中 format1.setBorderStyle(QXlsx::Format::BorderDashDotDot); //边框样式 xlsx.write("A1", "Hello Qt!", format1);//写入文字,按照刚才设置的样式 xlsx.write(2, 1, 12345, format1);//写入文字,按照刚才设置的样式 //第2行第1列 QXlsx::Format format2; format2.setFontBold(true); //设置加粗 format2.setFontUnderline(QXlsx::Format::FontUnderlineDouble); //下双划线 format2.setFillPattern(QXlsx::Format::PatternLightUp); //填充方式 xlsx.write("A4", "=44+33", format2); //写入公式 xlsx.write("C4", true, format2); //写入TRUE xlsx.saveAs("d:/lm.xlsx");
QXlsx::Document xlsx("D:/lm.xlsx"); bool b=xlsx.selectSheet("8.2"); //在当前打开的xlsx文件中,找一个名字为ziv的sheet //没找到 返回:false 找到返回:true //如果找到就作为当前活动工作表 xlsx.addSheet("8.4");//添加一个名为8.4的sheet,已经存在就无效 b=xlsx.selectSheet("8.4"); for (int i=10; i<20; ++i) {/*写入一串数字*/ xlsx.write(i, 1, i*i*i); //A10:A19 xlsx.write(i, 2, i*i); //B10:B19 xlsx.write(i, 3, i*i-1); //C10:C19 } QXlsx::Chart *pieChart = xlsx.insertChart(3, 5, QSize(300, 300));//在3行5列的位置插入一个图标--准备绘图 //注意:3行5列是从0开始的 pieChart->setChartType(QXlsx::Chart::CT_Pie); //设置图形类型 /*QXlsx::Chart::CT_Pie 饼形图 QXlsx::Chart::CT_Bar 条形图 */ pieChart->addSeries(QXlsx::CellRange("A10:A19"));//给图形添加数据 QXlsx::Chart *barChart = xlsx.insertChart(3, 13, QSize(300, 300)); barChart->setChartType(QXlsx::Chart::CT_Bar); barChart->addSeries(QXlsx::CellRange("A10:C19")); xlsx.saveAs("d:/lm.xlsx"); qDebug()<<b;
QXlsx::Document xlsx("D:/lm.xlsx"); bool b=xlsx.selectSheet("8.2"); QImage myImage = QImage("d:/tu.jpg"); xlsx.insertImage(1, 1, myImage); // 在指定单元格插入图片 //从0开始 xlsx.saveAs("d:/lm.xlsx");
QXlsx::Document xlsx("D:/lm.xlsx"); bool b=xlsx.selectSheet("8.2"); QVariant reader = xlsx.read("C3"); //读取指定单元格数据 QString str = reader.toString(); qDebug()<<str;
QXlsx::Document xlsx("D:/lm.xlsx"); bool b=xlsx.selectSheet("8.2"); QVariant reader = xlsx.read("C3"); //读取指定单元格数据 QVariant reader1 = xlsx.read(6,4); //读取指定单元格数据--从1开始 QString str = reader1.toString(); qDebug()<<str;
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
2019-02-12 QToolBox工具箱
2019-02-12 组合框QGroupBox
2019-02-12 把ui界面加入到工程中
2019-02-12 assistant文档