uses Excel2000,ComObj;

procedure F_Form.Button1Click(Sender: TObject);
var
    myExcel:TExcel;
    Int_i,Int_j,rowCount,columnCount:Integer;
    ExcelId:Variant;
begin
  try
      ExcelId:=CreateOleObject('Excel.Application');
  except
      on Exception do raise Exception.Create('无法创建报表,请确认是否安装EXCEL');
  end;

if DBGrid4.DataSource.DataSet.RecordCount<>0 then
  begin
      rowCount:=DBGrid4.DataSource.DataSet.RecordCount;
      columnCount := DBGrid4.FieldCount;
        try
            Excelid.Visible := True;
            Excelid.WorkBooks.Add;
            Excelid.WorkSheets[1].Range['A1:I1'].Merge(True);
            Excelid.WorkSheets[1].Cells[1,1].Value :=  'xxx公司';

Excelid.WorkSheets[1].Range['A2:I2'].Merge(True);
            Excelid.WorkSheets[1].Cells[2,1].Value := 'xxx信息统计表';

excelid.worksheets[1].cells[3,1].value:='1;
            excelid.worksheets[1].cells[3,2].value:='2;
            excelid.worksheets[1].cells[3,3].value:='3';
            excelid.worksheets[1].cells[3,4].value:='4;
            excelid.worksheets[1].cells[3,5].value:='5;
            excelid.worksheets[1].cells[3,6].value:='6;
            excelid.worksheets[1].cells[3,7].value:='7;
            excelid.worksheets[1].cells[3,8].value:='8';
            excelid.worksheets[1].cells[3,9].value:='9;
            excelid.worksheets[1].cells[3,10].value:='10;

Excelid.WorkSheets[1].Range['A1:T3'].Font.Name :='宋体';
            Excelid.WorkSheets[1].Range['A1:I2'].Font.Size :=12;
            Excelid.WorkSheets[1].Range['A2:T3'].Font.Size :=10;
            Excelid.WorkSheets[1].Range['A1:T3'].Font.Bold :=True;

DBGrid4.DataSource.DataSet.First();
            for Int_i:=0 to rowCount do
            begin
              for Int_j:=0 to columnCount-1 do
              begin
                ExcelId.worksheets[1].cells[Int_i+4,int_j+1].value:=  DBGrid4.DataSource.DataSet.FieldByName(DBGrid4.Columns.Items[int_j].FieldName).AsString;
              end;
              DBGrid4.DataSource.DataSet.Next();
            end;

Excelid.WorkSheets[1].range['A1:T3'].HorizontalAlignment := $FFFFEFF4;
            Excelid.worksheets[1].range['A1:T3'].VerticalAlignment := $FFFFEFF4;
            Excelid.Columns.AutoFit;

finally
        end;

end;
end;

delphi dbgrid数据导出为excel的更多相关文章

  1. Delphi 数据导出到Excel

    好多办公软件特别是财务软件,都需要配备把数据导出到Excel,下面就来介绍两种数据导出方法 1.ADODB导出查询结果(此方法需要安装Excel) 2.二维表数据导出(根据Excel文件结构生成二进制 ...

  2. 学习笔记 DataGridView数据导出为Excel

    DataGridView数据导出为Excel   怎样把WinForm下的“DGV”里的绑定数据库后的数据导出到Excel中. 比如:在窗体里有个一“DGV”,DataGridView1,绑定了数据源 ...

  3. 将C1Chart数据导出到Excel

    大多数情况下,当我们说将图表导出到Excel时,意思是将Chart当成图片导出到Excel中.如果是这样,你可以参考帮助文档中保存和导出C1Chart章节. 不过,也有另一种情况,当你想把图表中的数据 ...

  4. vb.net-三种将datagridview数据导出为excel文件的函数

    第一种方法较慢,但是数据格式都比较好,需要引用excel的 Microsoft.Office.Interop.Excel.dll  office.dll #Region "导出excel函数 ...

  5. 数据导出至Excel文件--好库编程网http://code1.okbase.net/codefile/SerializeHelper.cs_2012122018724_118.htm

    using System; using System.IO; using System.Data; using System.Collections; using System.Data.OleDb; ...

  6. 数据导出到Excel中

    自己修改后的一个数据导出到Excel的方法,粘出来与大家共享. 只需要将             System.Web.HttpContext.Current.Response.Charset =   ...

  7. asp.net将数据导出到excel

    本次应用datatable导出,若用gridview(假设gridview设为了分页显示)会出现只导出当前页的情况. protected void btnPrn_Click(object sender ...

  8. 将datagrid中数据导出到excel中 -------<<工作日志2014-6-6>>

    前台datagrid数据绑定 #region 导出到excel中    /// <summary>    /// 2014-6-6    /// </summary>    / ...

  9. 机房收费系统——在VB中将MSHFlexGrid控件中的数据导出到Excel

    机房收费系统中,好多查询的窗体都包含同一个功能:将数据库中查询到的数据显示在MSHFlexGrid控件中,然后再把MSHFlexGrid控件中的数据导出到Excel表格中. 虽然之前做过学生信息管理系 ...

随机推荐

  1. js 简单实现隐藏和显示

    <html> <head> <meta charset="gb2312"> <title>隐藏和显示</title> & ...

  2. 牛客练习赛47 DongDong数颜色 (莫队算法)

    链接:https://ac.nowcoder.com/acm/contest/904/E 来源:牛客网 DongDong数颜色 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 5242 ...

  3. session共享原理以及PHP 实现多网站共享用户SESSION 数据解决方案

    参考自: http://www.cnblogs.com/qulinke/articles/6003049.html https://segmentfault.com/q/101000000578847 ...

  4. cyopen注释掉导入的动态函数

    cyopen注释掉导入的动态函数 cyopen注释掉导入的动态函数 cyopen注释掉导入的动态函数

  5. linux下redis 安装

    --获取redis [redis@localhost ~]$ wget http://download.redis.io/releases/redis-2.8.7.tar.gz --2017-05-2 ...

  6. Nginx 0.8.x + PHP 5.2.13(FastCGI)搭建胜过Apache十倍的Web服务器

    [文章作者:张宴 本文版本:v6.3 最后修改:2010.07.26 转载请注明原文链接:http://blog.zyan.cc/nginx_php_v6/] 前言:本文是我撰写的关于搭建“Nginx ...

  7. python--数学运算函数

    x=-100 y=abs(x) #求绝对值 y=divmod(9,4) #9/4之后获取整数与余数 #(2, 1) #返回一个元组(2, 1),第一个数是整数,第二个数是余数 y=round(3.14 ...

  8. qt5--QPainter绘图

    需要 #include <QPainter> #include "win.h" #include "ui_win.h" #include <Q ...

  9. javascript / angular 如何把object转成array

    取出的api 格式是纯object格式 {"name":"james","city":"Taipei","co ...

  10. 什么是弹性盒子 ( Flex Box)?

    ㈠什么是弹性盒子? 弹性盒子是 CSS3 的一种新的布局模式.引入弹性盒布局模型的目的是提供一种更加有效的方式来对一个容器中的子元素进行排列.对齐和分配空白空间. 弹性盒子由弹性容器(Flex con ...