| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 4932 人关注过本帖, 2 人收藏
标题:Dbf文件转换为Excel的方法
只看楼主 加入收藏
wengjl
Rank: 14Rank: 14Rank: 14Rank: 14
等 级:贵宾
威 望:109
帖 子:2214
专家分:3882
注 册:2007-4-27
收藏
得分:0 
以下是引用laowan001在2021-8-30 14:49:21的发言:

从7楼的截图看,好像是dbf文件选错了
我测试很顺利,已经把我的程序改了。
这是我至今为止见到的最好的方法,效率比复制粘贴要快,关键是不报错了,谢谢楼主,多谢多谢!!!

说明,用楼主的提供的程序,导出了zdlx.dbf,后又自己生成了更大数据量的文件,导出都很顺利!!!


你判错了,是因为我用的是VFP8.0,所以无法打开

只求每天有一丁点儿的进步就可以了
2021-08-30 15:26
xuminxz
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:41
帖 子:766
专家分:2517
注 册:2011-5-8
收藏
得分:0 
回复 8楼 nbwww
文件(夹)名中有空格,或有备注字段,正在解决……

[此贴子已经被作者于2021-8-30 16:19编辑过]


dBase有人接盘了。
2021-08-30 16:18
xuminxz
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:41
帖 子:766
专家分:2517
注 册:2011-5-8
收藏
得分:0 
文件(夹)名中有空格的问题已经解决。备注字段暂时无法导出,如果需要可以逐记录向Excel表中写,但速度可能比较慢。
dbf2xls.zip (7.65 KB)

dBase有人接盘了。
2021-08-30 16:51
xuminxz
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:41
帖 子:766
专家分:2517
注 册:2011-5-8
收藏
得分:0 
回复 7楼 wengjl
VFP7.0、8.0可以用
use dbf2xcel.scx
go 23
打开Properties将
Alignment = 2
改为Alignment = 1或删除、或改为你的版本的默认值(我没用过7、8不知道是什么)试试。


[此贴子已经被作者于2021-8-30 18:01编辑过]


dBase有人接盘了。
2021-08-30 17:42
xuminxz
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:41
帖 子:766
专家分:2517
注 册:2011-5-8
收藏
得分:0 
经测试,将DBF导出到其它文件,最好的方法还是用COM,逐个记录、逐个字段地写入。其它方法都会丢数据。(主要是数据中有非常可视字符时。)

dBase有人接盘了。
2021-08-30 22:10
laowan001
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:66
帖 子:1089
专家分:2682
注 册:2015-12-30
收藏
得分:0 
回复 11楼 wengjl
知道了就好
2021-08-31 08:10
wengjl
Rank: 14Rank: 14Rank: 14Rank: 14
等 级:贵宾
威 望:109
帖 子:2214
专家分:3882
注 册:2007-4-27
收藏
得分:0 
以下是引用xuminxz在2021-8-30 17:42:45的发言:

VFP7.0、8.0可以用
use dbf2xcel.scx
go 23
打开Properties将
Alignment = 2
改为Alignment = 1或删除、或改为你的版本的默认值(我没用过7、8不知道是什么)试试。

谢谢!按照您的提示,改为1,就能打开了,如图示
图片附件: 游客没有浏览图片的权限,请 登录注册

只求每天有一丁点儿的进步就可以了
2021-08-31 08:19
Bc_Newboy
Rank: 2
等 级:论坛游民
帖 子:76
专家分:99
注 册:2019-4-14
收藏
得分:0 
2021-08-31 08:25
xuminxz
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:41
帖 子:766
专家分:2517
注 册:2011-5-8
收藏
得分:0 
如果没有非法汉字(半个汉字)可以用以下命令。(包括备注字段也可正常导出)
CURSORTOXML("已经打开的表别名或工作区名","XML文件名.xml", 3, 512+16,记录数,"XSD文件名")
1、XML与XSD名可以任意,建议与表同名。
2、记录数
0——复制所有记录
其它——从当前记录开始的记录数。
记录数最大数Excel2003及以前为2^16-1,2007及以后2^20-1 (-1是标题行。)
指定数大于表中实际记录数,按实际数复制,不会出错。

dBase有人接盘了。
2021-09-08 10:44
schtg
Rank: 12Rank: 12Rank: 12
来 自:Usa
等 级:贵宾
威 望:67
帖 子:1730
专家分:3324
注 册:2012-2-29
收藏
得分:0 
好!
2021-09-09 05:49
快速回复:Dbf文件转换为Excel的方法
数据加载中...
 
   



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

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