我有个一个Excel模板 
基本样式如: 车号 人数 班次 (已隐藏的列包含公式) 客运金额 货运金额 。。 
01235 需要填写 需要填写 需要填写 需要填写 。。 
06099 
45628 
74163 
86319 
78522 
。 
。  
。 
。 
。 
汇总 需要填写 需要填写 需要填写 需要填写 需要填写 需要填写 这里并不是要把数据导入成Excel文件,而是我根据Excel中的车号到我的数据库中去查找某辆车,然后一一填进Excel去,而且有很多线路,各个线路的公式又是不一样的 

解决方案 »

  1.   

    excel也可以作为数据库进行连接,这样就可以读出excel中的数据,然后再和你的数据库进行对比。对比结果再写入Excel就可以了。
      

  2.   

    用sql语句查询数据
    记住数据所在行与烈
    然后改写数据即可
      

  3.   

    通过OLE方式操作Excel,通过单元格坐标进行读写
    具体方法搜下以前帖子,很多
      

  4.   

    怎么样往EXCEL表的行里写数据,有没有例子供参考一下。
      

  5.   

    var
      AStrID : String;
      ARow,ACol,i,j,AMaxCol : Integer;
      ATXT : String;
    begin
      AMaxCol := StringGrid.ColCount;
      FExcelApp := Unassigned;
      FExcelApp := CreateOleObject('Excel.Application');
      FWorkBook := CreateOleObject('Excel.Sheet');
      try
        FWorkbook := FExcelApp.WorkBooks.Add;
        FWSheet := FWorkBook.ActiveSheet;
    //    FExcelApp.ActiveWindow.DisplayGridlines := False;
        ARow := 1;
        ACol := 1;
        PlShowMsg.Visible := True;
       // FMaxRow := GetMaxRow(FWorkBook.Worksheets[1].UsedRange.Rows.Count);
        for ARow := 0 to StringGrid.RowCount-1 do
        begin
          PlShowMsg.Caption :=  '导入条件...'+IntToStr(ARow+1);
          Application.ProcessMessages;
          for ACol := 1 to StringGrid.ColCount-1 do
          begin
            FWSheet.cells[ARow+1,ACol].value := StringGrid.Cells[ACol,ARow]; 
          end;
        end;
        PlShowMsg.Visible := False;
    //    ATXT := 'A:N';
    //    FWSheet.Range[ATXT].Select;
    //    FWSheet.Range[ATXT].Colu.AutoFit;
           // FWSheet.Select;
      //  FWSheet.EntireColumn.AutoFit;
        FWorkBook.WorkSheets[1].SaveAs(SaveFilaName);
        FWorkBook.Save;
      finally
        FworkBook.Saved   :=   True;
        FExcelApp.WorkBooks.Close;
        FExcelApp.Quit;
        FExcelApp := Unassigned;
      end;