| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 5614 人关注过本帖
标题:excel2007转DBF继续
只看楼主 加入收藏
tjdeming
Rank: 2
等 级:论坛游民
帖 子:429
专家分:54
注 册:2013-3-4
结帖率:90.14%
收藏
已结贴  问题点数:20 回复次数:13 
excel2007转DBF继续
一张EXCEL2007表用什么方法才能导入到DBF6.0表,期待各位高手予以解答,解决实际工作中的困难。


[ 本帖最后由 tjdeming 于 2013-8-19 05:15 编辑 ]
2013-08-19 05:14
hu9jj
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:红土地
等 级:贵宾
威 望:400
帖 子:11772
专家分:43421
注 册:2006-5-13
收藏
得分:3 
没用过2007,IMPORT命令不能用么?

活到老,学到老!http://www.(该域名已经被ISP盗卖了)E-mail:hu-jj@
2013-08-19 07:22
taifu945
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:80
帖 子:1545
专家分:3298
注 册:2012-7-6
收藏
得分:3 
以下是引用tjdeming在2013-8-19 05:14:23的发言:

一张EXCEL2007表用什么方法才能导入到DBF6.0表,期待各位高手予以解答,解决实际工作中的困难。

可以另存为“5.0/95工作簿”格式,就能导入了。但是,若Excel本身就有字段名的话,最好用字母,而不要用中文。
2013-08-19 09:07
wengjl
Rank: 14Rank: 14Rank: 14Rank: 14
等 级:贵宾
威 望:109
帖 子:2197
专家分:3838
注 册:2007-4-27
收藏
得分:3 
可以解决的,但过程很复杂痛苦————因为IP行业有一句名言:没有做不到,只有想不到。

只求每天有一丁点儿的进步就可以了
2013-08-19 09:11
xmlz
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:5
帖 子:294
专家分:1392
注 册:2010-8-29
收藏
得分:3 
以下是引用taifu945在2013-8-19 09:07:13的发言:


可以另存为“5.0/95工作簿”格式,就能导入了。但是,若Excel本身就有字段名的话,最好用字母,而不要用中文。


被excel2007保存过的文件,即使再另存为低版本,也不能用import和append命令处理

可以通过OLE或者ODBC方式读取后写表。
2013-08-19 22:44
hu9jj
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:红土地
等 级:贵宾
威 望:400
帖 子:11772
专家分:43421
注 册:2006-5-13
收藏
得分:0 
实在不行的话就用VFP控制EXCEL,逐行读入每个单元的内容保存到DBF中。

活到老,学到老!http://www.(该域名已经被ISP盗卖了)E-mail:hu-jj@
2013-08-20 07:26
tjdeming
Rank: 2
等 级:论坛游民
帖 子:429
专家分:54
注 册:2013-3-4
收藏
得分:0 
回复 6楼 hu9jj
请教:具体操作方法.谢谢.
2013-08-21 03:12
fyyylyl
Rank: 8Rank: 8
等 级:贵宾
威 望:17
帖 子:302
专家分:764
注 册:2006-5-22
收藏
得分:3 
M_File='test.xlsx'
IF FILE(M_File)
    myexcel=createobject('excel.application')
    myexcel.visible=.f.
    bookexcel=myexcel.workbooks.open(M_File)
    o_SheetName=myexcel.application.ActiveSheet.Name
    UsedRange =bookexcel.worksheets(o_SheetName).UsedRange
    o_rows=UsedRange.rows.count
    o_cols=UsedRange.columns.count
        cFields="("+ALLTRIM(myexcel.cells(1,1).value)+" C(100)"        &&假设各列均为字符型,具体根据实际而定;也可先定义DBF结构。记得也有自动判断的,不过代码一时找不到了
        FOR i=2 TO o_cols
            cFields=cFields+","+ALLTRIM(myexcel.cells(1,i).value)+" C(100)"
        ENDFOR
            cFields=cFields+")"
        SELECT 0
            CREATE TABLE test &cFields
       FOR i=2 TO o_rows
           APPEND BLANK
               FOR j=1 TO o_cols
                   cField=FIELD(j)
                REPLACE &cField WITH myexcel.cells(i,j).value
            ENDFOR
        ENDFOR
    myexcel.workbooks.close
    myexcel.quit
    BROWSE
ELSE
   =MESSAGEBOX("指定文件不存在!",0+16,"提示")
ENDIF

2013-08-21 15:15
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9799
专家分:26886
注 册:2012-2-5
收藏
得分:3 
改用EXCEL2003吧

坚守VFP最后的阵地
2013-08-21 18:53
tjdeming
Rank: 2
等 级:论坛游民
帖 子:429
专家分:54
注 册:2013-3-4
收藏
得分:0 
回复 9楼 sdta
知难而退?向高手学习! 继续!
2013-08-22 04:35
快速回复:excel2007转DBF继续
数据加载中...
 
   



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

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