VBA读取word文档表格中table的cell的text文本

已有 11546 次阅读

2010-6-4 16:40

|个人分类:学习篇|系统分类:科研笔记

Sub Readtable()

Dim filename As String

Dim filenum As Long

Dim fileslist As String

Dim outfile As String

Dim outfile_log As String

outfile = "I:综合整理结果20100525-2其它各省1257省集合_125.txt"

fileslist = "I:综合整理结果20100525-2其它各省125Filellist_125.txt" '输入读取的word文件列表

outfile_log = "I:综合整理结果20100525-2其它各省1257省集合_125_log.txt"

filenum = 125 '输入读取的word文件列表中的文件数

Open fileslist For Input As #1

Open outfile For Output As #2

Open outfile_log For Output As #3

Dim wdApp As Word.Application, wdDoc As Word.Document

On Error Resume Next

Set wdApp = GetObject(, "Word.Application")

If Err.Number <> 0 Then 'Word isn't already running

Set wdApp = CreateObject("Word.Application")

End If

On Error GoTo 0

Dim tableNum As Long

Dim i As Long, j As Long, k As Long, m As Long, n As Long

Dim r1 As Long, r7 As Long, r4 As Long

Dim result As String

Dim temp As String, temp00 As String, temp0 As String, temp1 As String, temp2 As String

Dim oCel As Cell

Dim flag As Long

For i = 1 To filenum

Line Input #1, filename

Set wdDoc = wdApp.Documents.Open(filename)

wdApp.Visible = True

'WrdApp.Documents.Open filename:=myFilename

'wdDoc.PrintOut

'wdDoc.SaveAs "C:temphello.doc"

wdDoc.Activate

tableNum = ActiveDocument.Tables.Count

Print #3, filename, "#", tableNum

result = ""

Set oCel = Nothing

For j = 1 To tableNum

'Set oTable = ActiveDocument.Tables(j)

'Dim oCel0 As Cell

'Dim oCel1 As Cell

'Dim oCel2 As Cell

'Obtain location cells

Set oCel = ActiveDocument.Tables(j).Cell(2, 2)

temp = Mid(oCel.Range.Text, 1, 1)

'当cell(2,2)为“地”时

r7 = 7

r4 = 4

r1 = 2

flag = 0

'当cell(2,2)为"调"时

If temp = "调" Then

r7 = r7 - 1

r4 = r4 - 1

r1 = r1 - 1

flag = -1

End If

If temp = "因" Then

r7 = r7 + 1

r4 = r4 + 1

r1 = r1 + 1

flag = 1

End If

'读取记录表类型

temp00 = ""

Set oCel = ActiveDocument.Tables(j).Cell(r7, 2)

'oCel.Range.MoveEnd Unit:=wdCharacter, Count:=-1

temp00 = Replace(oCel.Range.Text, Chr(13), ",") + "#"

'**************************************************************

'读取地点,调查时间

temp0 = ""

For k = r1 To 1 + r1

Set oCel = ActiveDocument.Tables(j).Cell(k, 3)

'oCel.Range.MoveEnd Unit:=wdCharacter, Count:=-1

temp0 = temp0 + "#" + Replace(oCel.Range.Text, Chr(13), ",")

Next k

'3   地理坐标    X:0628489  Y:4190334

temp1 = ""

For m = 1 To 4

Set oCel = ActiveDocument.Tables(j).Cell(r4, m)

'oCel.Range.MoveEnd Unit:=wdCharacter, Count:=-1

temp1 = temp1 + "#" + Replace(oCel.Range.Text, Chr(13), ",")

Next m

'Set oCel0 = ActiveDocument.Tables(j).Cell(4, 1)

'Set oCel1 = ActiveDocument.Tables(j).Cell(4, 3)

'Set oCel2 = ActiveDocument.Tables(j).Cell(4, 4)

'Obtain 轨道号

'成像时间,沙化类型 , 沙化程度, 土地利用类型, 主要植物种, 主要植被盖度, 植被总盖度,

'植被长势, 土壤类型, 土壤质地, 治理措施, 影像色彩, 影像纹理, 分布状况, 比例尺

temp2 = ""

For n = 5 + flag To 10 + flag

Set oCel = ActiveDocument.Tables(j).Cell(n, 3)

'oCel.Range.MoveEnd Unit:=wdCharacter, Count:=-1

temp2 = temp2 + "#" + Replace(oCel.Range.Text, Chr(13), ",")

Next n

'Set oCel4 = ActiveDocument.Tables(j).Cell(6, 3)

'Set oCel5 = ActiveDocument.Tables(j).Cell(5, 3)

'For Each aCell In oTable.Rows(4).Cells(1 - 4) '设定读取的表行

'Set myRange = ActiveDocument.Range(Start:=aCell.Range.Start, End:=aCell.Range.End - 1)

'MsgBox myRange.Text

'Set myRange = aCell.Range

'myRange.MoveEnd Unit:=wdCharacter, Count:=-1 ' 非常重要,目的是去掉换行符' 否则内容后面会有个小圆点

'MsgBox myRange.Text

'‘temp = Concat(",", myRange.Text)

result = temp00 + temp0 + temp1 + temp2

'Next aCell

Print #2, CStr(i), "*", CStr(j), "*", result

Next j

wdDoc.Close

Next i

Close #1

Close #2

Close #3

End Sub

转载本文请联系原作者获取授权,同时请注明本文来自付安民科学网博客。

链接地址:http://blog.sciencenet.cn/blog-219445-332048.html

上一篇:VBA 向ArcGIS的mdb数据库中添加照片

下一篇:EXCEL中的VBA操作

VBA读取html表格内容,科学网—VBA读取word文档表格中table的cell的text文本 - 付安民的博文...相关推荐

  1. 读取excel表格内容,并写入到word文档中

    import pandas as pd import docx from docx.shared import RGBColor ''' 该代码段适合,将excel题库转换成word格式的题库,写入的 ...

  2. Python实现识别html文本内容并截图放入word文档

    需求: excel文件中存放了很多html标签文本,需要把文本内容在浏览器中打开将内容截图,放入doc文档保存. 手动过程 需要逐条手动处理 1. 从excel表格中复制标签文本内容 <div& ...

  3. Word文档表格中插入图片无法完整显示解决办法

    如上图所示,Word文档表格中插入图片却只显示很窄一条边 解决办法:选中图片,菜单栏上点击段落右方小箭头扩展项 选择单倍行距,即可完整显示图片

  4. 使用poi给word文档表格中添加样式

    32.使用poi给word文档表格中添加样式 File fileNew = new File(exportPath + exportName + ".docx");InputStr ...

  5. 使用VBA统一word文档表格样式

    在多人协作的word文档中,经常会出现同一性质的内容格式不一致的情况.要快速统一同一性质的内容的格式,最佳实践无疑是使用样式功能.但是对于表格而言,对表格样式的编辑无法做到使表格在页面居中,而且对于标 ...

  6. VBA多个WORD文档表格数据写入到EXCEL中

    工作提示: 1.当前目录下有多个相同的WORD表格: 2.在EXCEL中新建VBA项目: 3.将WORD表格中的数据读取写入到一条EXCEL记录中去. '目录下多个WORD表格批量处理 Sub Rea ...

  7. Excel vba从excel中导出表格数据和图表到新word文档

    office应用程序是可以相互访问的,比如可以把excel的数据导出到word中 step1: 首先要引用word工程对象,在excelvba中依次点击 工具-->引用-->microso ...

  8. java读取word文档内容_合并多个Word文档内容,还在复制粘贴就out了,同事五秒轻松搞定...

    在我们工作中,我们经常会编写多个Word文档内容,那么怎么将多个单个的Word文档合并到一个文档中,这就会显得有些难度. 如上图所示,我们需要将三个不同的案例,快速的汇总到我们的案例汇总表当中.许多朋 ...

  9. php怎么在表格里插图片,Python操作word文档插入图片和表格的实例演示

    今天带来Python操作word文档插入图片和表格的实例演示教程详解 前言 图片是Word的一种特殊内容,这篇文章主要介绍了关于Python操作word文档,向里面插入图片和表格的相关内容,下面话不多 ...

最新文章

  1. Android-2D绘图
  2. 【PAT】A1079 Total Sales of Supply Chain
  3. 思科模拟器32位_三款另类的68k Mac模拟器
  4. 02函数-03-闭包
  5. 小程序 pagescrollto_微信小程序学习笔记(三)-- 首页及详情页开发
  6. Apache Calcite官方文档中文版-概览-1.背景
  7. 一位算法工程师从30+场秋招面试中总结出的超强面经—文本检测与GAN篇(含答案)...
  8. PreparedStatement批量处理和事务
  9. 最新版idea2017+kemulator搭建J2ME开发环境
  10. WOMic 使用wifi 将手机作为电脑麦克风音频输入
  11. 用visualstudio创建html,VisualStudio如何制作html网页
  12. 【计算机三级网络技术】 快速求出IP地址块经聚合后的IP地址
  13. 记账时,如何对开销进行分类
  14. 好玩好用软件推荐,让你大开眼界
  15. 最高分计算机公式,您好,excel怎么用函数公式计算最高分人数!用excle算最高分...
  16. word论文排版插件_推荐一款强大的Word插件,一键搞定上万字论文的排版问题
  17. OpenGL图形旋转
  18. Google镜像代理地址:
  19. 2010教师师德学习心得体会
  20. 最近的心路历程非常之多

热门文章

  1. python的print怎么输出utf-8的编码_原创反转精度算法:小数的终极编码
  2. 数据库半年回顾:国外波澜不惊,国内势如破竹
  3. 又一数据库高危漏洞爆出,数据安全如何有效保障?
  4. Git工作流中常见的三种分支策略:GitFlow、GitHubFlow和GitLabFlow
  5. 一文总结GaussDB通信原理知识
  6. 昇腾AI处理器软件栈--张量加速引擎(TBE)
  7. 华为云ROMA,联接企业应用的现在与未来
  8. lora终端连接云服务器_物联网通讯技术三足鼎立形成:NB-IoT、eMTC、LoRa各有千秋...
  9. 408计算机网络考研试题,2021考研计算机(408)试题及解析——计算机网络
  10. 在xml中自定义属性 app