注册 登录
编程论坛 VFP论坛

如何读取多张WORD格式的干部信息登记表到DBF汇总表中

王咸美 发布于 2021-04-14 09:54, 1751 次点击
现有多张WORD格式的干部信息登记表,如何读取上面的信息到DBF汇总表中,请高手指点。
只有本站会员才能查看附件,请 登录

只有本站会员才能查看附件,请 登录
4 回复
#2
王咸美2021-04-14 16:16
下列代码有点问题,请高手不吝赐教,万分感谢!!!
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编辑过]

#3
fyyylyl2021-04-14 16:58
备注文件呢?
#4
王咸美2021-04-14 18:36
只有本站会员才能查看附件,请 登录

干部信息汇总表.FPT文件在上面压缩文件内,请高手指教!万分感谢!!!
只有本站会员才能查看附件,请 登录


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

#5
王咸美2021-04-15 16:44
下列代码中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编辑过]

1