Qt下Excel操作修订版本.docxVIP

  • 1
  • 0
  • 约9.49千字
  • 约 26页
  • 2022-06-07 发布于江苏
  • 举报
Qt 下 Excel 操作 Qt 之操作 Excel qaxobject qt 操作 excel qtvba excelvba Visual Visual Basic for Applications ( VBA) 是 一种 Visual Basic 的一种宏语言,主要能用 来扩展 Windows 的应用程式功能,特别是 Microsoft Office 软件。也可说是一种应用程 式视觉化的 Basic Script 。1994 年发行的 Excel 5.0 版本中,即具备了 VBA 的宏功能。 在 VBA 的参考手册中就可以看到具体 函 数 数、属性的用法, Qt 操作 Excel 主要通 过 QAxObject + Excel VBA 来实现! 关于 Qt 对 Excel 的操作, 网上的资料 挺多的, 但大多数都是比较基础的, 关 于插入工 作表(至最后一行)、删除工作表、合并/ 拆分 单元格、设置单元格背景色、 设置单元格边框 色、 设置单元格字体(类型、大小、加粗、斜体、 下 划线、 颜色等) 、以及设置单元格对齐方式等用 法 都没有怎么提到,今天就总结一下有关 Qt 对 Excel 的操作。 Qt 操作 Excel ,无论后缀是 xls 还是 xlsx 都可以。 如下,是我下载的一个 Excel VBA 参考 手册,内容不算太全! Excel 读取 为了便于测试,假设已存在一个 excel 文 件,操作内容已经被红色标记出来。 如下所示: 主要读取内容: 标题 工作表数目 工作表名称 起始 行 起始列 行数 列数 单元格内容 代码如下: QAxObject excel(Excel.Application); excel.setProperty(Visible, true); QAxObject *work_books = excel.querySubObject(WorkBooks); work_books-dynamicCall(Open (const QString), QString(E:/test.xlsx)); QVariant title_value = excel, property (,zCaptionzz) ; //获取标题 qDebug ()?QS tri ng (excel title : e_value; QAxObject *work_book = exce1. querySubObject(ActiveWorkBook); QAxObject *work_sheets = work_book-querySubOb j ec t(Sheets〃); // Sheets 也可换用 Worksheets int sheet_count 二 work_sheets-property(Count〃) tolnt(); 〃获取工作表数目 qDebug ()?QString (sheet count : /z)?shee t_cou nt; for(int i 二 1; i 〈二 sheet_count; i++) { QAxObject *work_sheet = work_book-querySubOb j ec t(Sheets(int) i) ; //Sheets (int)也可换用 Worksheets (int) QString work_sheet_name = work_sheet-property(〃Name,z) toString(); 〃获取工作表名称 QString message = QString(^sheet /z)+QString::number (i, 10)+ QString (/z 〃\ name ); qDebug () ?message?work_shee t_name; } if (sheet_count 0) { QAxObject *work_sheet 二 work_book-querySubOb j ec t(Sheets(int)、 1); QAxObject *used_range = work_sheet-querySubObject(UsedRange); QAxObject *rows = used_range-querySubObject(Rows); QAxObject *columns = used_range-querySubObject(Columns); int row_start = used_range-property(Row).toInt(); // 获取起始行 int column_start

文档评论(0)

1亿VIP精品文档

相关文档