现有一个EXCLE文件,有3列数据,分别是型号、数量、位置,现在的情况为一个型号可能有一个以上的记录行,一个型号也可能有多个位置。现在要求把型号一样的多个记录行改为一个记录行,并计算数量,各个位置要放到一个单元个,并把结果输入到SQL 2000数据库。用DELPHI怎么实现?
要求将表一转换为表二的格式
產品型號 結存數量 位置 產品型號 結存數量 位置
1P1013C 12 F1 1P1013C 12 F1
1P1014B 8 D58 1P1014B 240 D58/D72
1P1014B 8 D58 1P1021A 32 D58/C31
1P1014B 112 D58 1P1025B 78 D58
1P1021A 14 D58
1P1021A 2 D58
1P1025B 50 D58
1P1025B 28 D58
1P1014B 112 D72
1P1021A 18 C31
表一 表二

解决方案 »

  1.   

    先把数据导入数据库,然后再在SQL SERVER中编程实现。
      

  2.   

    以可以用DELPHI编个程序,打开EXCEL文件,然后对EXCEL进行操作得到你需要的表二,然后再导入数据库。根据编号查找,得到位置信息后存入新表。
      

  3.   

    能不能具体点,我才接触Delphi和SQL。能不能不导入SQL而直接在delphi里实现
      

  4.   

    呵呵,sql中操作不是更方便嘛
      

  5.   

    我只是為了對EXCEL進行操作,在人家的電腦上沒必要裝SQL吧.
    各位朋友幫我事整個解決辦法呀,謝謝了
      

  6.   

    Anylib 组件,自由界面和报表的完美组合!
    http://www.anylib.com
      

  7.   

    如果只是做一次的话, 干吗写程序, 手工操作不是更方便?用程序的话检查一下总共有多少列, 然后打把数据全部取出来放到Dataset中, 再进行合计
    最后更新到SQLServer中
    这种是要使用Excel对象的方式一格一格的来读取, 如何打开Excel,网上很多资料, 查一下就知道了。如果Excel格式比较固定的话还可以把Excel当然数据库的方式来读取, 不过不知道如果相同的列名ADO能不能很好的支持, 这个要测试一下才知道。
      

  8.   

    www.Delphibbs.com
    有很多关于Excel如何倒入到sql数据库中的资料和实例!
    建议你搜索,其实只需要一条sql语句就可以搞定了!
      

  9.   

    /*******  导出到excel 
    EXEC master..xp_cmdshell ’bcp SettleDB.dbo.shanghu out c:\temp1.xls -c -q -S"GNETDATA/GNETDATA" -U"sa" -P""’ /***********  导入Excel 
    SELECT * 
    FROM OpenDataSource( ’Microsoft.Jet.OLEDB.4.0’, 
      ’Data Source="c:\test.xls";User ID=Admin;Password=;Extended properties=Excel 5.0’)...xactions 
    SELECT cast(cast(科目编号 as numeric(10,2)) as nvarchar(255))+’ ’ 转换后的别名 
    FROM OpenDataSource( ’Microsoft.Jet.OLEDB.4.0’, 
      ’Data Source="c:\test.xls";User ID=Admin;Password=;Extended properties=Excel 5.0’)...xactions