| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1405 人关注过本帖
标题:如何读取多张WORD格式的干部信息登记表到DBF汇总表中
只看楼主 加入收藏
王咸美
Rank: 1
等 级:新手上路
帖 子:579
专家分:0
注 册:2018-1-4
结帖率:97.04%
收藏
已结贴  问题点数:20 回复次数:4 
如何读取多张WORD格式的干部信息登记表到DBF汇总表中
现有多张WORD格式的干部信息登记表,如何读取上面的信息到DBF汇总表中,请高手指点。
干部信息汇总表.rar (98.58 KB)

图片附件: 游客没有浏览图片的权限,请 登录注册
搜索更多相关主题的帖子: 汇总 信息 DBF 表中 读取 
2021-04-14 09:54
王咸美
Rank: 1
等 级:新手上路
帖 子:579
专家分:0
注 册:2018-1-4
收藏
得分:0 
下列代码有点问题,请高手不吝赐教,万分感谢!!!
CLOSE DATABASES
USE 干部信息汇总表 IN 0
zap
USE jsxx IN 0 ALIAS jsxx
Local Axx[RECCOUNT("jsxx")]
oWord=CREATEOBJECT('word.Application')
   FOR i=1 TO ADIR(c_File,"*.doc")
   oDoc=oWord.Documents.Open(SYS(5)+SYS(2003)+"\"+c_File[i,1])
   oTable=oWord.ActiveDocument.Tables(1)
WITH oTable  
   SELECT jsxx
   SCAN
      DO case
         CASE INLIST(ALLTRIM(类型),"C","M")
            Axx[RECNO()]=ALLTRIM(.Cell(位置).Range.Text,0h0D,0h07,0h20)
         CASE ALLTRIM(类型)=="D"
            Axx[RECNO()]=CTOD(TRANSFORM(Cell(位置).Range.Text,"@R 9999-99-99"))
         CASE ALLTRIM(类型)=="N"
            Axx[RECNO()]=Val(Cell(位置).Range.Text)
     ENDCASE
   ENDSCAN
   INSERT INTO 干部信息汇总表 FROM ARRAY Axx
   ENDFOR
 endwith
endfor  
RELEASE WordApp
SELECT 干部信息汇总表  
BROWSE
USE IN 干部信息汇总表


[此贴子已经被作者于2021-4-15 16:53编辑过]

2021-04-14 16:16
fyyylyl
Rank: 8Rank: 8
等 级:贵宾
威 望:17
帖 子:301
专家分:764
注 册:2006-5-22
收藏
得分:20 
备注文件呢?

2021-04-14 16:58
王咸美
Rank: 1
等 级:新手上路
帖 子:579
专家分:0
注 册:2018-1-4
收藏
得分:0 
干部信息汇总表.rar (98.67 KB)

干部信息汇总表.FPT文件在上面压缩文件内,请高手指教!万分感谢!!!
图片附件: 游客没有浏览图片的权限,请 登录注册


[此贴子已经被作者于2021-4-14 19:04编辑过]

2021-04-14 18:36
王咸美
Rank: 1
等 级:新手上路
帖 子:579
专家分:0
注 册:2018-1-4
收藏
得分:0 
下列代码中DBF表中日期型字段不起作用,请大侠指点,万分感谢!!!

Close Databases
Use 干部信息汇总表 In 0
Zap
Local Axx[20]
oWord=Createobject('word.Application')

For i=1 To Adir(c_File,"*.doc")
    oDoc=oWord.Documents.Open(Sys(5)+Sys(2003)+"\"+c_File[i,1])
    oTable=oWord.ActiveDocument.Tables(1)
    With oTable
        Axx[1]=Alltrim(.Cell(1,2).Range.Text,0h0D,0h07,0h20)
        Axx[2]=Alltrim(.Cell(1,4).Range.Text,0h0D,0h07,0h20)
        Axx[3]=Val(.Cell(1,6).Range.Text) && 年龄为数值型
        Axx[4]=Alltrim(.Cell(2,2).Range.Text,0h0D,0h07,0h20)
        Axx[5]=Alltrim(.Cell(2,4).Range.Text,0h0D,0h07,0h20)
        Axx[6]=Alltrim(.Cell(2,6).Range.Text,0h0D,0h07,0h20)
       Axx[7]=Ctod(Transform(.Cell(3,2).Range.Text,"@R9999-99-99")) && 日期型不起作用
        Axx[8]=Ctod(Transform(.Cell(3,4).Range.Text,"@R9999-99-99")) && 日期型不起作用

        Axx[9]=Alltrim(.Cell(3,6).Range.Text,0h0D,0h07,0h20)
        Axx[10]=Alltrim(.Cell(4,2).Range.Text,0h0D,0h07,0h20)
        Axx[11]=Alltrim(.Cell(4,4).Range.Text,0h0D,0h07,0h20)
        Axx[12]=Alltrim(.Cell(4,4).Range.Text,0h0D,0h07,0h20)
        Axx[13]=Alltrim(.Cell(5,3).Range.Text,0h0D,0h07,0h20)
        Axx[14]=Alltrim(.Cell(5,5).Range.Text,0h0D,0h07,0h20)
        Axx[15]=Alltrim(.Cell(6,5).Range.Text,0h0D,0h07,0h20)
        Axx[16]=Alltrim(.Cell(7,3).Range.Text,0h0D,0h07,0h20)
        Axx[17]=Alltrim(.Cell(7,5).Range.Text,0h0D,0h07,0h20)
        Axx[18]=Alltrim(.Cell(8,5).Range.Text,0h0D,0h07,0h20)
        Axx[19]=Alltrim(.Cell(9,2).Range.Text,0h0D,0h07,0h20)
        Axx[20]=Alltrim(.Cell(10,2).Range.Text,0h0D,0h07,0h20)
        Insert Into 干部信息汇总表 From Array Axx
    Endwith
    oDoc.Close
Endfor
Release oWord
Select 干部信息汇总表
Browse
Use In 干部信息汇总表



[此贴子已经被作者于2021-4-15 19:50编辑过]

2021-04-15 16:44
快速回复:如何读取多张WORD格式的干部信息登记表到DBF汇总表中
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.018360 second(s), 10 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved