DELPHI应用EXCEL(1)
在介绍使用delphi控制excel之前前,我们首先需要了解关于EXCEL的几个基本概念:EXCEL应用程序、工作薄(book)、工作表(sheet)以及单元格(CELLS);

首先,我们是打开excel应用程序,并可设置应用程序可见或不可见,可以设置应用程序标题等等;
没有管理工作簿(workbook)的应用程序是没有意义的,我们在打开应用程序后,需要新建或打开workbook,每个打开的workbook都有一个编号,在office系列中,编号是从1开始的,而不是delphi默认的从0开始。在不进行设置的情况下,第一个workbook,即workbooks[1]是活动的workbook,每个workbook对应一个excel文件。我们调用应用程序的保存或打开文件,其实就是针对workbook的操作。
同样的,未管理工作表(worksheet)的工作簿(workbook)也是无意义的。每个工作簿下,至少应该有一个worksheet,worksheet的编号也是从1开始的,即worksheets[1]。同样的,也有一张活动的的worksheet,即activesheet,默认的activesheet是activeworkbook下的worksheet[1]。
每个新建的工作簿,默认有三个工作表,未命名的工作表名字分别是sheet1,sheet2和sheet3,在工作簿中可以增加或减少工作表。工作表的名字可以改变,顺便提一句,在使用firedac模拟打开工作簿为数据库时,工作表即为数据表(table),其表名是“[工作表名$]”,例如SHEET1的table name就是“[SHEET1$]”。
工作表是由单元格(CELLS)组成,cells.item[I,j]才是具体的单元格的数据。一张工作表中有许多个单元格(cells),可以指定range,在指定range内,单元格的编号从1开始计数,单元格是一个由行列组成的二元数组。
Range下可以继续指定子range,子range下可以再指定子range……。最小的range就是单元格。
Rows是某一行单元格的range集合,columns是某一列单元格的组合。
每一个range都可以有自己的字体,对其方式、边框等。
再说明一下,excel的计算时从1开始的,而不是0,即第一个工作簿、工作表、单元格都是1。
本专题将从DELPHI控件、OLEOBJECT、OLECONTAINER、FIREDAC等四个方面讨论对excel的应用。
DELPHI应用EXCEL(1)的更多相关文章
- Delphi操作Excel大全
Delphi操作Excel大全 DELPHI操作excel(转)(一) 使用动态创建的方法 首先创建 Excel 对象,使用ComObj:var ExcelApp: Variant;ExcelApp ...
- 用DELPHI操作EXCEL Word
用DELPHI操作EXCEL 在DELPHI中显示EXCEL文件,可用以下简单代码做到.但要实用,则需进一步完善. var Form1: TForm1; EApp:variant;implemen ...
- Delphi对Excel保护操作
http://www.docin.com/p-378093577.html在金融系统的应用系统中经常需要与Excel交换数据或利用Excel制作报表,但在某些情况下,我们的业务系统要求生成的临时或最终 ...
- Delphi控制Excel输出上标示例
直接上代码吧,这个示例在Excel中输出一个M2: unit FfrmMain; interface uses Winapi.Windows, Winapi.Messages, System.SysU ...
- delphi 读取excel 两种方法
http://www.cnblogs.com/ywangzi/archive/2012/09/27/2705894.html 两种方法,一是用ADO连接,问题是Excel文件内容要规则,二是用OLE打 ...
- delphi读取excel
简单的例子 procedure TForm1.Button1Click(Sender: TObject); var ExcelApp,MyWorkBook: OLEVariant; begin ope ...
- delphi 控制 EXCEL 数据透视表
虽说报表多又难做,做报表相当容易. 做报表也可以偷懒的,超级实用又省事.只需要做一个报表,这个报表里面包括几乎所有的数据字段,然后将查询到的数据导出到 excel中,利用excel自带的“数据透视”功 ...
- Delphi 生成excel中的饼图
生成excel中的饼图 var i,j,m,n,count1:integer; str:string; Jdate:tdatetime; channellist,potBstrtime,potEstr ...
- [转]Delphi导出Excel的设置操作
procedure CreatRepSheet(SheetName:String;PageSize,PageLay:Integer); {新建Excel工作簿.进行页面设置} begin {新建Exc ...
- Delphi操作Excel(Use Oel)
Use ComObj: procedure TorderMore1.BitBtn2Click(Sender: TObject);var xlsFile:WideString; var ExcelA ...
随机推荐
- vue3 + vite 多项目多模块打包
vue3 + vite 多项目多模块打包 本示例基于vite-plugin-html插件,实现多个独立项目共存,共享组件和依赖,运行.打包互不干扰. npm create vite@latest 兼容 ...
- #Powerbi 利用EOMONTH,计算月度时间进度
在POWERBI中计算本月的时间进度 许多小伙伴在做看板时,往往会遇到需要时间进度的计算,来配合业绩达成的进度,进行比较分析.那么如何在BI做通过公式进行这个数据的求值呢? 首先,我们需要测算两个值, ...
- 2021-10-24:快乐数。编写一个算法来判断一个数 n 是不是快乐数。「快乐数」定义为:对于一个正整数,每一次将该数替换为它每个位置上的数字的平方和。然后重复这个过程直到这个数变为 1,也可能是
2021-10-24:快乐数.编写一个算法来判断一个数 n 是不是快乐数.「快乐数」定义为:对于一个正整数,每一次将该数替换为它每个位置上的数字的平方和.然后重复这个过程直到这个数变为 1,也可能是 ...
- 2021-09-28:合并区间。以数组 intervals 表示若干个区间的集合,其中单个区间为 intervals[i] = [starti, endi] 。请你合并所有重叠的区间,并返回一个不重叠
2021-09-28:合并区间.以数组 intervals 表示若干个区间的集合,其中单个区间为 intervals[i] = [starti, endi] .请你合并所有重叠的区间,并返回一个不重叠 ...
- docker安装rabbitmq:management
1.拉取镜像 docker pull rabbitmq:management 2.安装 docker run -dit --name rabitmq -e RABBITMQ_DEFAULT_USER= ...
- uniapp开发企业微信应用中的定位问题记录
项目背景:开发工具为HBuilderX,框架为uniapp,开发移动端的Web应用,在企业微信中使用(自建应用),Web开发的应用,不是小程序. 需求点:获取用户当前的位置信息,技术流程包括以下几个环 ...
- ChatGPT Plugin开发setup - Java(Spring Boot) Python(fastapi)
记录一下快速模板,整体很简单,如果不接auth,只需要以下: 提供一个/.well-known/ai-plugin.json接口,返回openAI所需要的格式 提供openAPI规范的文档 CORS设 ...
- ChatGPT4通道开放接入基于OPEN AI 平台你的任何APP 可一键接入AI 智能
你一定很好奇什么是 OPEN AI快速开发平台 顾名思义,开放的OPEN AI平台. 基于这个平台你的上层应用,如何 APP,小程序,H5,WEB, 公众号,任何一切终端都可以轻松接入,AI智能应用. ...
- 安装Visio 2013与原本的office冲突的最终解决方案
一. 下载office visio 2013 这个直接去网上下载一个安装包解压即可 或者直接云盘下载 https://pan.baidu.com/s/1jWGFoHAjegBBvyrL1rq4DQ 提 ...
- hexrays sdk study
There are 20 examples in /ida_path/plugins/hexrays_sdk/plugins, you can learn from that, you can als ...