2014-12-04 42 views
0

我想導入一個excel文件(只有數字像矩陣)到我的Qtableview!我在網上找到了一些代碼,是關係到QTableWidget的,但我CA算起來組織單位QTableView中提前 感謝如何從excel文件導入數據到qtableview

+0

我認爲最難的部分是解析excel文件格式。你可以使用CSV導出嗎? – 2014-12-04 21:00:27

+0

@SimonWarta謝謝你的回覆!是的,如果它能完成這項工作,我可以將它縮小到csv格式! – AnonimO 2014-12-04 21:12:14

回答

0

與QAxObject試試吧 - 一個包裝了COM對象的QObject: 像這樣:

QAxObject *excel = new QAxObject ("Excel.Application", 0); 
    //excel->dynamicCall ("SetVisible(bool)", true); 

    QAxObject *workbooks = excel->querySubObject ("Workbooks"); 
    workbook = workbooks->querySubObject ("Open(const QString&)", fileName); 
    QAxObject *statSheet = sheets->querySubObject ("Item(const QVariant&)", QVariant (sheetsComboBox->currentText())); 
    statSheet->dynamicCall ("Select()"); 


    int column = 0; 
    int summe_column = 0; 
    int col = 1; 
    do 
    { 
     QAxObject* cell = statSheet->querySubObject ("Cells(int, int)", 1, col); 
     QVariant value = cell->dynamicCall("Value()"); 

     QString string = statSheet->querySubObject ("Cells(int, int)", row, column)->dynamicCall("Value()").toString(); 


     ++col; 
    } 
    while (col < 40) 

}

您還需要CONFIG + = qaxcontainer在您的.pro文件中。

+0

它應該是'QT + = qaxcontainer' – 2017-05-16 01:34:41

相關問題