| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1008 人关注过本帖
标题:如何将同一文件夹下多个EXCEL文档和WORD文档中的信息合并到DBF表中
只看楼主 加入收藏
王咸美
Rank: 1
等 级:新手上路
帖 子:658
专家分:3
注 册:2018-1-4
结帖率:97.44%
收藏
已结贴  问题点数:20 回复次数:12 
如何将同一文件夹下多个EXCEL文档和WORD文档中的信息合并到DBF表中
同一文件夹下有:3月份销量.xls、4月份销量.xls、5月份销量.doc ......等多个不同类型的文件,如何将这些信息汇总到DBF表中,要求字段名动态生成。请高手赐教,万分感谢!!!

销量.rar (6.6 KB)

图片附件: 游客没有浏览图片的权限,请 登录注册

图片附件: 游客没有浏览图片的权限,请 登录注册

图片附件: 游客没有浏览图片的权限,请 登录注册


[此贴子已经被作者于2023-7-30 08:23编辑过]

搜索更多相关主题的帖子: 信息 DBF 表中 文档 文件夹 
2023-07-30 08:08
王咸美
Rank: 1
等 级:新手上路
帖 子:658
专家分:3
注 册:2018-1-4
收藏
得分:0 
图片附件: 游客没有浏览图片的权限,请 登录注册


图片附件: 游客没有浏览图片的权限,请 登录注册


图片附件: 游客没有浏览图片的权限,请 登录注册


[此贴子已经被作者于2023-7-30 08:18编辑过]

2023-07-30 08:14
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:451
帖 子:10607
专家分:43182
注 册:2014-5-20
收藏
得分:2 
从excel、word到dbf,这些之前的贴也有不少,可以参考。



[此贴子已经被作者于2023-7-30 16:02编辑过]

2023-07-30 16:01
王咸美
Rank: 1
等 级:新手上路
帖 子:658
专家分:3
注 册:2018-1-4
收藏
得分:0 
如何根据Excel和Word表格动态生成汇总表文件(huizong.dbf)的字段名?请高手赐教!谢谢!
2023-07-31 20:05
my2318
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:14
帖 子:258
专家分:640
注 册:2014-3-18
收藏
得分:2 
给个思路,建立数据表,字段可以是时间店名品种销量,读表格写入数据表,然后再汇总统计。
2023-07-31 20:39
fyyylyl
Rank: 8Rank: 8
等 级:贵宾
威 望:17
帖 子:313
专家分:820
注 册:2006-5-22
收藏
得分:16 
针对样本文件文件名命名规则、表格结构(代码不一定最优,但基本实现了所需功能):
cPath=GETDIR()
CLOSE DATABASES
Create Cursor Mydbf (FileName C(100))
IF Adir(cXLS,cPath+"*月份*.XLS?")>0
    Append From Array cXLS
ENDIF
IF  Adir(cDOC,cPath+"*月份*.DOC?")>0
    Append From Array cDOC
ENDIF
IF RECCOUNT()>0
    SELECT 0
        CREATE TABLE (cPath+"huizong") (月份 C(2),店名 C(40))
    SELECT MyDbf
    SCAN
        cWaitmesg="正在提取数据 ,请稍候......文件:"+STR(RECNO())+"/"+STR(RECCOUNT())
        Wait Window cWaitmesg  Nowait At srow()/2,(scol()-len(cWaitmesg))/2
        DO CASE
            CASE   "XLS"$UPPER(JUSTEXT(FileName))
                oExl=CreateObject('Excel.Application')
                oExl.workbooks.open(cPath+FileName)
                nRows=oExl.sheets[1].UsedRange.rows.count&&获取指定文件的行数
                nCols=oExl.sheets[1].UsedRange.columns.count&&获取指定文件的列
                FOR i= 3 TO nRows
                    INSERT INTO huizong(月份,店名) Value(LEFT(MyDbf.FileName,AT_C("月",MyDbf.FileName)-1),oExl.cells(i,1).Value)
                    FOR j=2 TO nCols
                            cFielName=oExl.cells(2,j).Value
                        SELECT huizong
                        IF Fsize(cFielName)=0
                            ALTER TABLE huizong ADD (cFielName) N(8)
                        ENDIF
                        REPLACE (cFielName) WITH oExl.cells(i,j).Value
                    ENDFOR
                ENDFOR
                    oExl.Quit
                    RELEASE oExl
            CASE   "DOC"$UPPER(JUSTEXT(FileName))
                oWord = CREATEOBJECT("Word.Application")
                oDoc = oword.Documents.Open(cPath+FileName)
                FOR EACH tab IN oDoc.Tables
                    nRows=Tab.Rows.Count&&获取指定文件的行数
                    nCols=Tab.Columns.Count&&获取指定文件的列
                    FOR i=2 TO Tab.Rows.Count
                        INSERT INTO huizong(月份,店名) Value(LEFT(MyDbf.FileName,AT_C("月",MyDbf.FileName)-1),STRTRAN(STRTRAN(Tab.Cell(i,1).Range.Text,CHR(13),''),Chr(7)))
                        FOR j=2 TO nCols
                                cfielname=STRTRAN(STRTRAN(Tab.Cell(1,j).Range.Text,CHR(13),''),Chr(7))
                            SELECT huizong
                            IF Fsize(cFielName)=0
                                ALTER TABLE huizong ADD (cFielName) N(8)
                            ENDIF
                            REPLACE (cFielName) WITH VAL(Tab.Cell(i,j).Range.Text)
                        ENDFOR
                    ENDFOR
                ENDFOR
                oDoc.Close
                oWord.Quit
                RELEASE oWord
        ENDCASE
    ENDSCAN
    WAIT CLEAR
ELSE
    MESSAGEBOX("选定目录下无符合条件的文件!",0+48+0,"提示:")
ENDIF
USE IN MyDbf
SELECT huizong
brow

2023-08-01 09:30
schtg
Rank: 12Rank: 12Rank: 12
来 自:Usa
等 级:贵宾
威 望:67
帖 子:1712
专家分:3318
注 册:2012-2-29
收藏
得分:0 
回复 6楼 fyyylyl
亲测,非常不错哈,仅需微调即可!
图片附件: 游客没有浏览图片的权限,请 登录注册
2023-08-01 09:48
fyyylyl
Rank: 8Rank: 8
等 级:贵宾
威 望:17
帖 子:313
专家分:820
注 册:2006-5-22
收藏
得分:0 
replace可加条件或之前加Go Bott

[此贴子已经被作者于2023-8-1 16:58编辑过]


2023-08-01 09:57
schtg
Rank: 12Rank: 12Rank: 12
来 自:Usa
等 级:贵宾
威 望:67
帖 子:1712
专家分:3318
注 册:2012-2-29
收藏
得分:0 
回复 8楼 fyyylyl
已经非常好啦,加上条件就完美!
2023-08-01 10:19
王咸美
Rank: 1
等 级:新手上路
帖 子:658
专家分:3
注 册:2018-1-4
收藏
得分:0 
谢谢!!!
2023-08-01 18:14
快速回复:如何将同一文件夹下多个EXCEL文档和WORD文档中的信息合并到DBF表中
数据加载中...
 
   



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

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