CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  其他数据库开发 >  VFP

将.dbf文件倒出到.xls文件碰到的问题

楼主kyong()2005-06-01 20:35:43 在 其他数据库开发 / VFP 提问

在vfp下用copy   to   my_file   xls是,只能倒出10000多条记录,而excel可以有6万多条记录,为什么只能倒出1万多条,怎么解决? 问题点数:0、回复次数:4Top

1 楼kyong()回复于 2005-06-01 22:40:15 得分 0

谁能告诉我呀?请帮帮忙Top

2 楼luwq168(后备甜心)回复于 2005-06-02 08:21:49 得分 0

http://community.csdn.net/Expert/FAQ/FAQ_Index.asp?id=204040Top

3 楼apple_8180(十豆三)回复于 2005-06-02 10:22:23 得分 0

没错,参考一下楼上的FAQ吧,建议提问时,先搜索一下与你问题相似的帖子。或先查看公告帖  
   
  【公告】-   发帖须知  
  http://community.csdn.net/Expert/topic/3976/3976627.xml?temp=.9106714Top

4 楼jiju8484(积聚)回复于 2005-06-05 14:24:27 得分 0

用代码导  
  &&   DbfToExcel.PRG  
   
   
  CLOSE   DATABASES   ALL  
  SET   DATE   YMD  
  SET   CENTURY   ON  
  cDbfFile   =   GETFILE("dbf")  
  IF   EMPTY(cDbfFile)  
  RETURN  
  ENDIF  
  USE   (cDbfFile)   ALIAS   FoxTable   IN   0  
  IF   NOT   USED("FoxTable")  
  =MESSAGEBOX("打开表失败,程序将中止!",   16,   "Error")  
  RETURN  
  ENDIF  
  cExcelFile   =   PUTFILE("保存为(&N):",JUSTSTEM(cDbfFile)+".xls","xls")  
  IF   EMPTY(cExcelFile)  
  CLOSE   DATABASES   ALL  
  RETURN  
  ENDIF  
  SELECT   FoxTable  
  oExcelSheet   =   GETOBJECT("","Excel.Sheet")   &&   产生Excel对象  
  IF   NOT   TYPE("oExcelSheet")   =   "O"  
  =MESSAGEBOX("Excel对象创建失败程序将中止!",   16,   "Error")  
  RETURN  
  ENDIF  
  oExcelApp   =   oExcelSheet.Application  
  oExcelApp.Workbooks.Add()  
  oExcelApp.ActiveWindow.WindowState=2  
  oSheet   =   oExcelApp.ActiveSheet  
  nFldCount   =   AFIELDS(aFldList,   "FoxTable")  
  FOR   i   =   1   TO   nFldCount  
  oSheet.Cells(1,i).Value   =   aFldList[i,   1]  
  ENDFOR  
  cRecc   =   STR(RECCOUNT("FoxTable"))  
  SCAN  
  WAIT   WINDOW   ALLTRIM(STR(RECNO()))   +   "/"   +   cRecc   NOWAIT  
  FOR   i   =   1   TO   nFldCount  
  vValue   =   .NULL.  
  IF   AT(aFldList[i,   2],   "CDLMNFIBYT")   =   0  
  LOOP  
  ENDIF  
  cFldName   =   aFldList[i,   1]  
  vValue   =   EVALUATE(cFldName)  
  DO   CASE  
  CASE   aFldList[i,   2]   =   "C"   &&   字符/字符串  
  vValue   =   TRIM(vValue)  
  CASE   aFldList[i,   2]   =   "D"   &&   日期  
  vValue   =   DTOC(vValue)  
  CASE   aFldList[i,   2]   =   "T"   &&   日期时间  
  vValue   =   TTOC(vValue)  
  CASE   INLIST(aFldList[i,   2],   "N",   "F",   "I",   "B",   "Y")   &&   数值  
  CASE   aFldList[i,   2]   =   "L"   &&   逻辑  
  CASE   aFldList[i,   2]   =   "M"   &&   备注型  
  OTHERWISE  
  vValue   =   .NULL.  
  ENDCASE  
  IF   VARTYPE(vValue)   =   "C"   AND   EMPTY(vValue)  
  LOOP  
  ENDIF  
  IF   NOT   ISNULL(vValue)  
  oSheet.Cells(RECNO("FoxTable")+1,   i).Value   =   vValue  
  ENDIF  
  ENDFOR  
  ENDSCAN  
  cChrStr   =   "ABCDEFGHIJKLMNOPQRSTUVWXYZ"  
  FOR   i   =   1   TO   nFldCount  
  cColumn   =   SUBSTR(cChrStr,   INT((i-1)/26),   1)   +   SUBSTR(cChrStr,   IIF(MOD(i,   26)=   0,   26,   MOD(i,   26))   ,   1)  
  oSheet.Columns(cColumn   +   ":"   +   cColumn).ColumnWidth   =   12  
  IF   aFldList[i,   2]   =   "M"  
  oSheet.Columns(cColumn   +   ":"   +   cColumn).WrapText   =   .F.  
  ENDIF  
  ENDFOR  
  oExcelApp.ActiveWorkbook.SaveAs(cExcelFile)  
  oExcelApp.ActiveWorkbook.Close(.F.)  
  oExcelApp.ActiveWorkbook.Close(.F.)  
  oExcelApp.Quit  
  oExcelSheet   =   .NULL.  
  oExcelApp   =   .NULL.  
  WAIT   CLEAR  
  =MESSAGEBOX("转换完毕!",   64,   "OK")  
  CLOSE   DATABASES   ALL  
   
  程序是用VFP8写的,在VFP6中也可以,没有问题。只要能够执行完成,就会是正确的,行数只受你安装的Excel最大行数限制,至少  
   
  大于65535行Top

相关问题

  • 急求:dbf文件与xls文件格式批量转换的方法.
  • dbf文件
  • 读取.dbf文件
  • 急!DBF导出为XLS文件如何突破16383条记录的限制?
  • 用import指令把xls文件转成dbf的时候,怎么样把dbf命名为其他名字
  • 修改DBF 文件时间
  • 如何操作dbf文件?
  • 如何访问DBF文件
  • DBF文件密码问题
  • 如何打开DBF文件?

关键词

  • .net
  • excel
  • foxtable
  • cdbffile
  • xls
  • faq

得分解答快速导航

  • 帖主:kyong

相关链接

  • CSDN Blog
  • 技术文档
  • 代码下载
  • 第二书店
  • 读书频道

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo