注册 登录
编程论坛 C++教室

ADO读取Excel数据

yy21drd 发布于 2012-04-22 14:40, 916 次点击
int ADOConn::WriteExcel(int row,int col, int count,int data)
{
    char buffer[4];
    printf(buffer,"F%d",col);
    _variant_t temp;
    _bstr_t bstrSQL="select * from [sheet1$]";
    try
    {
        m_pRecordset.CreateInstance(__uuidof(Recordset));
        m_pRecordset->Open(bstrSQL,_variant_t((IDispatch*)m_pConnection,true),adOpenDynamic,adLockOptimistic,adCmdText);

        m_pRecordset->MoveFirst();
        if (row==1)
        {
            temp=m_pRecordset->GetCollect(buffer);
            m_pRecordset->AddNew();
            m_pRecordset->PutCollect("buffer",data);
        }
        else
        {
            for (int i=1; i<row; i++)
                m_pRecordset->MoveNext();
            m_pRecordset->AddNew();
            m_pRecordset->PutCollect("buffer",data);
        }

        m_pRecordset->Update();   
    }
    catch(_com_error &e)
    {
        printf("%s",e.Description());
    }

    return 0;
}
void main()
{
ADOConn ado_write;
ado_write.OnInitADOConn_Write();  //到此处无错,这个是链接数据库的函数
ado_write.WriteExcel(1,4,2,1);//输出异常乱码
}
请问错在哪儿了?前面链接数据库是成功了的
2 回复
#2
yy21drd2012-04-22 14:41
错了,是写数据,对不起哈,说错了,是向Excel中写数据出错
#3
杨青斌2012-07-13 01:24
您好  这个问题您解决了吗?我也遇到同样的问题 求教
1