急!急问个位高手!怎么样把CListCtrl里面的数据导入到excel里面! 急!急问个位高手!怎么样把CListCtrl里面的数据导入到excel里面! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 用ADO连接EXCEL文档,然后遍历列表,然后用SQL语句"Insert into ...."插入数据。 使用Office的自动化接口可以直接操作excel文档 if the Microsoft Excel Driver is installedCDatabase database;CString sDriver = "MICROSOFT EXCEL DRIVER (*.XLS)"; CString sExcelFile; CString sSql;TRY{sSql.Format("DRIVER={%s};DSN='';FIRSTROWHASNAMES=1;READONLY=FALSE;CREATE_DB=\"%s\";DBQ=%s", sDriver,sExcelFile,sExcelFile);if( database.OpenEx(sSql,CDatabase::noOdbcDialog) ){sSql = "CREATE TABLE Raportti (Col1 TEXT,Col2 TEXT,Col3 TEXT,Col4 TEXT)";database.ExecuteSQL(sSql);CString Mydata1 ,Mydata2 ,Mydata3 ,Mydata4 ,;int ii = 0;while (ii++<ListCtrl Items){ Mydata1 =m_list.GetItemText(ii,0);Mydata2 =m_list.GetItemText(ii, 1);Mydata3 =m_list.GetItemText(ii, 2);Mydata4 =m_list.GetItemText(ii, 3);}sSql.Format("INSERT INTO Raport (Mydata1 ,Mydata2 ,Mydata3 ,Mydata4 ) VALUES ('%s','%s','%s','%s')", Mydata1 ,Mydata2 ,Mydata3 ,Mydata4 );database.ExecuteSQL(sSql);}} database.Close();}CATCH_ALL(e){TRACE1("Driver not installed: %s",sDriver);}END_CATCH_ALL;}if not, write to a CSV(Comma Separated Value) file(http://www.ioplex.com/~miallen/libmba/dl/src/csv.c). CFile xlsFile;xlsFile.Open(strFileName,.....);for(i=0;i<m_ctlListInfo.GetItemCount();i++) { for(j=0;j<23;j++) { strTemp=m_ctlListInfo.GetItemText(i,j); strData=strData+strTemp+"\t"; } strData+="\n"; } xlsFile.SeekToEnd(); xlsFile.Write(strData,strData.GetLength()); //End Save Data To xls File xlsFile.Close(); 关于DirectSound播放问题 学C++能不能不学框架 求教树控件计数的问题 滚动条问题 socket同时收发? 寻找哈希表存储结构体的相关资料... 请教各位大侠关于自定义回调函数的问题 大家好,请问VC2005和VC2008能不能够只安装VC部分? 大神请进,MFC下,大数据写入CRichEdit控件时,光标指针一直处于忙状态,如何破? 使用getqueuedcompletionstatus时不阻塞,返回的错误码为998 如何用vc实现汉字从windows矢量字库到点阵字模的功能? 用1个字符串存储1个DWORD值,字符串最小定义多长?
然后用SQL语句"Insert into ...."插入数据。
CString sDriver = "MICROSOFT EXCEL DRIVER (*.XLS)";
CString sExcelFile;
CString sSql;TRY
{
sSql.Format("DRIVER={%s};DSN='';FIRSTROWHASNAMES=1;READONLY=FALSE;CREATE_DB=\"%s\";DBQ=%s", sDriver,sExcelFile,sExcelFile);if( database.OpenEx(sSql,CDatabase::noOdbcDialog) )
{
sSql = "CREATE TABLE Raportti (Col1 TEXT,Col2 TEXT,Col3 TEXT,Col4 TEXT)";database.ExecuteSQL(sSql);CString Mydata1 ,Mydata2 ,Mydata3 ,Mydata4 ,;
int ii = 0;while (ii++<ListCtrl Items){
Mydata1 =m_list.GetItemText(ii,0);
Mydata2 =m_list.GetItemText(ii, 1);
Mydata3 =m_list.GetItemText(ii, 2);
Mydata4 =m_list.GetItemText(ii, 3);
}sSql.Format("INSERT INTO Raport (Mydata1 ,Mydata2 ,Mydata3 ,Mydata4 ) VALUES ('%s','%s','%s','%s')", Mydata1 ,Mydata2 ,Mydata3 ,Mydata4 );
database.ExecuteSQL(sSql);
}}
database.Close();
}
CATCH_ALL(e)
{
TRACE1("Driver not installed: %s",sDriver);
}
END_CATCH_ALL;
}if not, write to a CSV(Comma Separated Value) file(http://www.ioplex.com/~miallen/libmba/dl/src/csv.c).
xlsFile.Open(strFileName,.....);for(i=0;i<m_ctlListInfo.GetItemCount();i++)
{
for(j=0;j<23;j++)
{
strTemp=m_ctlListInfo.GetItemText(i,j);
strData=strData+strTemp+"\t";
}
strData+="\n";
}
xlsFile.SeekToEnd();
xlsFile.Write(strData,strData.GetLength());
//End Save Data To xls File
xlsFile.Close();