我通过ADO控制Excel。现在基本可以写数据了。但是无法插入字段。
我的程序。
try
{
  //打开文件
  m_pConn->Provider = L"Microsoft.Jet.OLEDB.4.0";
  strCommand.Format("Data Source=%s;Extended Properties=Excel 8.0;", “123.xls");
  hr = m_pConn->Open((_bstr_t)strCommand,"","",adConnectUnspecified);  //建立表
  m_pConn->Execute("CREATE TABLE [Data]([ID] TEXT)",NULL,adCmdText);  //写入数据
  strPath.Format(_T("INSERT INTO [%s] ([%s]) VALUES (%d)"), "Data", "ID", 1);
  m_pConn->Execute((_bstr_t)strPath, NULL, adCmdText);  //插入新的字段 (只要写入数据,就无法插入新的字段, 程序报异常,未指定的错误)
  strPath.Format(_T("ALTER TABLE [%s] ADD [%s] TEXT null"), "Data", "Value");
  pRst = m_pConn->Execute((_bstr_t)strPath, NULL, adCmdText);
}
catch (_com_error &e)
{
  CString csTmp;
  csTmp.Format("%s", e.ErrorMessage());
  TRACE1("%s", e.ErrorMessage());  return e.Error();
}请各位大侠帮我看看到底是什么问题呀?在这里先谢谢了。

解决方案 »

  1.   

    try catch就抓那句话看看是什么错误
      

  2.   

    为什么不可以啊?我在SQL server试这几条语句就可以。
    try catch 中e.Description()报的就是"无效的操作", e.ErrorMessage()报的是"未指定的错误"
      

  3.   

    不会吧!我还在想会不会是excel不支持那!那看来只能用其他方法了。谢谢!各位。
      

  4.   

    不会吧!我还在想会不会是excel不支持那!那看来只能用其他方法了。谢谢!各位。