数据表与*.xls文件之间的导入导出功能的实现方法已经知道,问题是系统有新要求,不能指望用户的的计算机(Windows系统)上安装有Excel,各位大哥帮忙想一想应该怎么办?说明:看清楚要求,谢绝再说Excel的导入导出功能的实现,谢谢!!!!

解决方案 »

  1.   

    导出可以用dxdbgrid的导出功能,导入恐怕很难实现了
      

  2.   

    把你的电脑上的EXCEL9.OLB(excel2000)拷到没有安装Excel的电脑的
    System32(2000/XP)或 System (98/ME)的文件夹里面试试看。
      

  3.   

    导出的时候先导出为TxT文件,各个数据项之间加Tab键,然后再把文件的后缀名改为.xls就可以了,这样的速度很快的~
      

  4.   

    也不是很难的,给楼主两种方法。
    第一种,适合于处理简单数据的,把Excel当成Access数据库来进行连接。
    方法如下,先选择Jet 4.0。然后选择你的Excel文件(XLS).
    然后,进入最后一个页(所有)设置属性,选择Extended Properties一项,输入Excel版本号
    office 2003为Excel 11.0。
    然后,再改一下下面的Jet OLEDB:Engine Type属性,值为35。
    最后,测试一下连接,没有错误是能连接上的,生成连接字符串。
    利用现有的数据库技术就可以往下做了,要注意,Excel中的表单名在这里的引用是[Sheet1$]。第二种方法是利用现成的控件,华表(Cell)就可以。可惜我手头上没那玩艺,不能详细的告诉你该如何连接,楼主可以在网上找一找关于华表方面的东西。华表是ActiveX控件。
      

  5.   

    已经知道了,和fanyufanyu(反语) 的方法第一种一样,用的是Excel 8.0
    暂时不结贴,看看还有没有什么其它的方法!!!!
      

  6.   

    const
      ConStr = 'Provider=Microsoft.Jet.OLEDB.4.0;Password="";'
               + 'Data Source=%s;Extended Properties=Excel 8.0;';
    begin
      //利用ADODataSet打开*.xls文件
      OpenDialog1.InitialDir := ExtractFileDir(Application.ExeName);
      OpenDialog1.Filter := 'XLS文件|*.xls';
      if OpenDialog1.Execute then
      begin
        try
          ADOConnection1.Connected := false;
          ADOConnection1.ConnectionString := format(Constr, [OpenDialog1.FileName]);
          ADOConnection1.LoginPrompt := false;
          ADOConnection1.Connected := true;
          ADODataSet1.Close;
          ADODataSet1.CommandType := cmdTableDirect;
          try
            TableList := TStringList.Create;
            ADOConnection1.GetTableNames(TableList);
            ADODataSet1.CommandText := TableList[0];
          finally
            TableList.Free;
          end;//end of try
          ADODataSet1.Open;
        except
          on e: Exception do
          begin
            ADODataSet1.Close;
            raise e.Create('打开Excel文件错误!如果你已经打开Excel,请先关闭Excel文件!' +
              #13 + e.Message);
          end;
        end;//end of try
      end;
      

  7.   

    'SELECT *  FROM [sheet1$]是什么想导入的EXECL表.
      

  8.   

    用ExpressQuantumGrid轻松实现。给分!