word表格转换成html,delphi将word表格转换成html_取得Word 表格中的数据
delphi将word表格转换成html_取得Word 表格中的数据
1、delphi将word表格转换成html
procedure TForm1.Button1Click(Sender: TObject);
var
wrdApp, wordDoc: Variant;
i,iRow,icol:integer;
s,str:string;
begin
randomize;
wrdApp := CreateOleObject( 'Word.Application');
wordDoc:= wrdApp.Documents.Open( 'd:\333.doc');
For i := 1 To WordDoc.Tables.Count do //第 i 个表
begin
str:='
For iRow := 1 To WordDoc.Tables.Item(i).Rows.Count do
begin
str:=str+'
'; //第 iCol列
For icol := 1 To WordDoc.Tables.Item(i).Columns.Count do
begin
s:= WordDoc.Tables.Item(i).Cell(iRow,icol).Range.Text;
s:=stringreplace(s, '', '',[rfreplaceall])+' ';
if (icol=1) then
str:= str+'
'+s+''
else
str:= str+'
'+s+'';
end;
str:=str+'
';
end;
str:=str+'
';
end;
writesenderrlog(str);
wordDoc.Close(False);
//wrdApp.Close;
end;
2、取得Word 表格中的数据基本算法
//取得Word 表格中的数据
procedure getWordCellStr;
var WordApp: TWordApplication;
WordDoc: TWordDocument;
DocInx,oFileName,CfCversions,oReadOnly,AddToRctFiles,PswDocument,
PswTemplate,oRevert,WPswDocument,WPswTemplate,oFormat: OleVariant;
i,iRow,iCol:integer;
myCell:Cell;
myRow:Row;
begin
memo1.Lines.Clear ;
// ===== 创建对象 =====
if not Assigned(WordApp) then
begin
WordApp:= TWordApplication.Create(nil);
WordApp.Visible := false;
end;
if not Assigned(WordDoc) then
WordDoc:= TWordDocument.Create(nil);
try
DocInx:=1;
oFileName := 'd: est.doc';
oReadOnly:=true;
CfCversions := EmptyParam;
AddToRctFiles:= EmptyParam;
PswDocument:= EmptyParam;
PswTemplate:= EmptyParam;
oRevert:= EmptyParam;
WPswDocument:= EmptyParam;
WPswTemplate:= EmptyParam;
oFormat:= EmptyParam;
// ===== 打开文件 =====
WordApp.Documents.open(oFileName,CfCversions,oReadOnly,AddToRctFiles,
PswDocument,PswTemplate,oRevert,WPswDocument,WPswTemplate,oFormat);
// ===== 关联文件 =====
WordDoc.ConnectTo(WordApp.Documents.Item(DocInx));
//方法(1)==> 规则表
For i := 1 To WordDoc.Tables.Count do //第 i 个表
begin //第 iRow 行
For iRow := 1 To WordDoc.Tables.Item(i).Rows.Count do
begin //第 iCol列
For icol := 1 To WordDoc.Tables.Item(i).Columns.Count do
begin
myCell:=WordDoc.Tables.Item(i).Cell(iRow,icol);
memo1.Lines.add(myCell.Range.Text);
end;
end;
end;
//方法(2)==> 不规则表:只有横向合并时
For i := 1 To WordDoc.Tables.Count do //第 i 个表
begin
For iRow := 1 To WordDoc.Tables.Item(i).Rows.Count do
begin
myRow:=WordDoc.Tables.Item(i).Rows.Item(iRow);//第 iRow 行
For icol := 1 To myRow.Cells.Count do //第 iCol列
begin
myCell:= myRow.Cells.Item(iCol) ;
memo1.Lines.add(myCell.Range.Text);
end;
end;
end;
//方法(3)==> 不规则:横向、纵向合并时; 任何表格
For i := 1 To WordDoc.Tables.Count do //第 i 个表
begin //第 j 个Cell
for j := 1 To WordDoc.Tables.Item(i).Range.Cells.Count do
begin
myCell := WordDoc.Tables.Item(i).Range.Cells.Item(j);
memo1.Lines.add(myCell.Range.Text);
end;
end;
finally
if Assigned(WordDoc) then // ===== 关闭文件 =====
begin
WordDoc.Close;
WordDoc.Disconnect;
WordDoc.Destroy;
WordDoc := nil;
end;
if Assigned(WordApp) then // ===== 关闭Word =====
begin
WordApp.Quit;
WordApp.Disconnect;
WordApp.Destroy;
WordApp := nil;
end;
end;
end;
本文出自:亿恩科技【www.enkj.com】
', '',[rfreplaceall])+' ';
if (icol=1) then
str:= str+'
'+s+''
else
str:= str+'
'+s+'';
end;
str:=str+'';
end;
str:=str+'';
end;
writesenderrlog(str);
wordDoc.Close(False);
//wrdApp.Close;
end;
2、取得Word 表格中的数据基本算法
//取得Word 表格中的数据
procedure getWordCellStr;
var WordApp: TWordApplication;
WordDoc: TWordDocument;
DocInx,oFileName,CfCversions,oReadOnly,AddToRctFiles,PswDocument,
PswTemplate,oRevert,WPswDocument,WPswTemplate,oFormat: OleVariant;
i,iRow,iCol:integer;
myCell:Cell;
myRow:Row;
begin
memo1.Lines.Clear ;
// ===== 创建对象 =====
if not Assigned(WordApp) then
begin
WordApp:= TWordApplication.Create(nil);
WordApp.Visible := false;
end;
if not Assigned(WordDoc) then
WordDoc:= TWordDocument.Create(nil);
try
DocInx:=1;
oFileName := 'd: est.doc';
oReadOnly:=true;
CfCversions := EmptyParam;
AddToRctFiles:= EmptyParam;
PswDocument:= EmptyParam;
PswTemplate:= EmptyParam;
oRevert:= EmptyParam;
WPswDocument:= EmptyParam;
WPswTemplate:= EmptyParam;
oFormat:= EmptyParam;
// ===== 打开文件 =====
WordApp.Documents.open(oFileName,CfCversions,oReadOnly,AddToRctFiles,
PswDocument,PswTemplate,oRevert,WPswDocument,WPswTemplate,oFormat);
// ===== 关联文件 =====
WordDoc.ConnectTo(WordApp.Documents.Item(DocInx));
//方法(1)==> 规则表
For i := 1 To WordDoc.Tables.Count do //第 i 个表
begin //第 iRow 行
For iRow := 1 To WordDoc.Tables.Item(i).Rows.Count do
begin //第 iCol列
For icol := 1 To WordDoc.Tables.Item(i).Columns.Count do
begin
myCell:=WordDoc.Tables.Item(i).Cell(iRow,icol);
memo1.Lines.add(myCell.Range.Text);
end;
end;
end;
//方法(2)==> 不规则表:只有横向合并时
For i := 1 To WordDoc.Tables.Count do //第 i 个表
begin
For iRow := 1 To WordDoc.Tables.Item(i).Rows.Count do
begin
myRow:=WordDoc.Tables.Item(i).Rows.Item(iRow);//第 iRow 行
For icol := 1 To myRow.Cells.Count do //第 iCol列
begin
myCell:= myRow.Cells.Item(iCol) ;
memo1.Lines.add(myCell.Range.Text);
end;
end;
end;
//方法(3)==> 不规则:横向、纵向合并时; 任何表格
For i := 1 To WordDoc.Tables.Count do //第 i 个表
begin //第 j 个Cell
for j := 1 To WordDoc.Tables.Item(i).Range.Cells.Count do
begin
myCell := WordDoc.Tables.Item(i).Range.Cells.Item(j);
memo1.Lines.add(myCell.Range.Text);
end;
end;
finally
if Assigned(WordDoc) then // ===== 关闭文件 =====
begin
WordDoc.Close;
WordDoc.Disconnect;
WordDoc.Destroy;
WordDoc := nil;
end;
if Assigned(WordApp) then // ===== 关闭Word =====
begin
WordApp.Quit;
WordApp.Disconnect;
WordApp.Destroy;
WordApp := nil;
end;
end;
end;
本文出自:亿恩科技【www.enidc.com】
-->
word表格转换成html,delphi将word表格转换成html_取得Word 表格中的数据相关推荐
- 处理中文乱码_为什么PDF转换成Word后是乱码?这种PDF要怎么转换?
你是否也遇到过将PDF转换成Word后,却只是一堆乱码?为什么会出现这种情况呢?要如何解决PDF转Word却是乱码的这个问题呢? 首先我们来分析下PDF转换Word后为什么会出现乱码,其实归根究底都是 ...
- 怎么把Word转换成PDF?这几种转换神器分享给你
如何将Word文档转换成PDF格式文件呢?大家在日常中经常会使用这两种文件,有时候需要把PDF文件转换成Word文档来进行编辑,有时候又需要把Word文档转换成PDF来进行传输文件发送文件.PDF如何 ...
- 图片和Word查阅有什么区别?图片文字怎么转换成word文档
图片和Word查阅有什么区别?图片文字怎么转换成word文档 在阅读和编辑文档时,许多人会面临一种选择:是使用图片还是使用Word文档.尽管两种方法都有其自身的优点和缺点,但实际上,它们之间存在着一些 ...
- word录入表单数据 java 导入系统,java导入excel | 怎么把excel中的数据批量导入到word中的表格中...
用javascript怎么实现把excel中的数据批量导入到数据库表中 这个js不能直接实现吧 我们程序用到 先读取excel内容转换成数组 然后放到页面上 再提交表单 储存 MySql如何批量添加数 ...
- 网页导出pdf不完整_今天才知道!Word、Excel、PDF格式还能随意转换,20秒即可实现...
前几天有粉丝私信转换君说为什么格式转换这么难?每次都要将内容复制过去再调整格式,一个小时才转换十几份文件,真是太难了! 看完这个私信,转换君发现之前给大家补的课都白补了,不过作为宠粉达人的我,还是再给 ...
- java制作九行九列表格_将文中后9行文字转换成一个9行4列的表格,设置表格居中,表格列宽为2.5厘米..._考试资料网...
问答题在考生文件夹下打开文档word.docx,按照要求完成下列操作并以该文件名(word.docx)保存文档. [文档开始] 2009年北平市中考招生计划低于10万人 晨报讯伴随初中毕业生人数连年下 ...
- 关于Word,PDF,PPT,TXT之间的转换
转自:微点阅读 https://www.weidianyuedu.com 一.把PPT转WORD形式的方法 提示:这种方法会把原来幻灯片中的行标.各种符号原封不动的复制下来. 2.利用"发 ...
- 如何在MATLAB中把变量填到Word中,matlab数据写入现有excel表格-如何将matlab中变量写入excel...
如何将matlab 中的数据写入现有的word 表格中? 你可以这样做: (1)先在matlab里面,把相关数据导出.保存成csv格式的文件:比如说,你可以在workspace视图底下,把相关的变量直 ...
- Word实现大写字母和小写字母批量的转换
Word实现大写字母和小写字母批量的转换其实很简单,只要记住按"Shift+F3"键. 下面是具体规则: 一.当英文句子中全部是小写字母时,选中全部按"Shift+F3& ...
最新文章
- axios + router4 + mobx:对于全局登录的思考
- python中二维数组的建立,输入和输出
- python 实现函数的递归
- 5、学MySQL前必须要了解的数据库专业术语
- Java基础学习路线送给零基础的朋友
- JAVA常用的环境变量配置
- 如果编程语言是女孩,你最喜欢哪一个?
- A - 还是畅通工程(最小生成树)
- double类型数据做加和操作时会丢失精度问题处理
- bzoj 3451 Normal
- 24个最好免费下载电子书(Ebooks)的网站
- DEM生成等高线及提取等高线3+1种方法
- 读书笔记——指数基金投资指南
- 汇编语言练习_2_批量传送 条件转移
- DRM DUMB相关说明
- java map 内存分配_mapreduce 内存分配
- layui搭建后台管理系统
- 计算机基础知识在教学的应用,计算机基础知识中项目教学法的应用
- 在Python中如何保存图像
- JS打开模态窗口showModalDialog
热门文章
- android paint 线宽_Paint setStrokeWidth方法:设置空心线宽
- 安装的python没有菜单栏_由非root用户安装python包/工具
- Unity 导出Supermap exe
- devops 文化_为什么回馈对DevOps文化很重要
- 敏捷团队为何失败,Bash技巧,Emacs vs. Vim,为Linux粉丝撰写的12部小说读物,以及其他热门歌曲
- 拒绝offer的理由_接受拒绝的3大理由
- (32) css—opcity属性
- 实战 | Java 流之Stream,Lambda以及日期
- java编程方向_java网络编程方向具体该怎么去学
- extjs 点击下拉框三角形触发事件_省市县三级联动下拉框的具体实现