如何将EXCEL文件导入CXGRID控件中啊?小弟是新手,大哥们帮帮我吧~!谢谢啦~!

解决方案 »

  1.   

    步骤,通过数据集间的操作
    1.数据集连接excel,这个ado可以操作
    2.数据集连接Grid的数据集
    3.exce数据想grid数据集中添加excel中的数据
    4.grid数据集Open,把数据显示在grid中
      

  2.   

    我是这样子连接的
    先是用ADOCONNECTION连接了EXCEL,ADOTABEL连接了ADOCONNECTION,然后用DBGRID连接了ADOCONNECT和ADOTABLE,这个是成功的。
    然后我就试着用CXGRID连接,可是我第一次用CXGRID,对这个控件不熟悉,连接过程中一直报错,说是对象打开时不允许操作。
      

  3.   

    CXGRID有个属性,在属性列表中有,好像是datacontroller,里面可以设置datasource
      

  4.   

    我把CXGRID的DATACONTROLLER属性指向dataconnection了,一导入EXCEL,就报错说是对象打开时不允许操作。
      

  5.   

    procedure TForm1.dxBarSubItem2Click(Sender: TObject);
    var
      str:string;
    begin
        if opendialog1.Execute then
        begin
          Str := OpenDialog1.FileName;
          AdoConnection1.LoginPrompt:=false;
          ADOConnection1.ConnectionString := 'Provider=Microsoft.Jet.OLEDB.4.0;'+'Data Source='+str+';Mode=Read;Extended Properties=Excel 8.0;Persist Security Info=False';
        end;
    end;
      

  6.   

      ADOConnection1.ConnectionString := 'Provider=Microsoft.Jet.OLEDB.4.0;'+'Data Source='+str+';Mode=Read;Extended Properties=Excel 8.0;Persist Security Info=False';
      

  7.   

    检查是否有其他程序已经打开要连接的excel文件
      

  8.   

    我的程序里只有CXGRID这一个要打开EXCEL文件的东东
      

  9.   

    这个excel文件是不是已经被独占了,比如用excel打开了
      

  10.   


    procedure TForm1.dxBarSubItem2Click(Sender: TObject); 
    var 
      str:string; 
    begin 
        if opendialog1.Execute then 
        begin 
          Str := OpenDialog1.FileName; 
          AdoConnection1.Close;//应该先关闭AdoConnection1,是不是之前AdoConnection1已经打开了
          AdoConnection1.LoginPrompt:=false; 
          ADOConnection1.ConnectionString := 'Provider=Microsoft.Jet.OLEDB.4.0;'+'Data Source='+str+';Mode=Read;Extended Properties=Excel 8.0;Persist Security Info=False'; 
        end; 
    end;
      

  11.   

    adoConnection1.Close;这一句报错,Access violation at address 00000000
      

  12.   

    现在不报错了,可就是CXGRID内什么数据都没有,bdmh大哥,你有邮箱没,我打包发给您行不?5555555555,是再是搞不定