注册 登录
编程论坛 VFP论坛

dbf如何转excel

反璞归真 发布于 2024-05-06 11:13, 805 次点击
现有DBF数据库A,其中有个“单位”字段,想以“单位”字段的值分别导出为excel,如何全部按单位导出,请指教
copy to 单位1.xls type xls5 for 单位="XXX"   这个只能一个一个导出,如何一次全部按单位导出,请高手帮帮忙!







本人是新手,没有基础,为了求知请高手们帮帮忙,十分感谢!

[此贴子已经被作者于2024-5-6 11:48编辑过]

9 回复
#2
wengjl2024-05-06 12:55
set engi 70
sele 单位 from A grou by 单位 into table ls
sele ls
scan
  cdw=ls.单位
  sele A
  copy to (cdw) for A.单位=cdw type xl5
  sele ls
ends
#3
反璞归真2024-05-06 14:48
回复 2楼 wengjl
提示命令中含有不能识别的短语和关键字
#4
wengjl2024-05-06 15:20
我试过是可行的

你把附件发上来



[此贴子已经被作者于2024-5-6 15:24编辑过]

#5
反璞归真2024-05-06 15:56
只有本站会员才能查看附件,请 登录


按字段名为:xxdm转换成7个excel表格
#6
wengjl2024-05-06 16:40
只有本站会员才能查看附件,请 登录
#7
反璞归真2024-05-06 17:24
回复 6楼 wengjl
谢谢大师的指导,终于搞明白了,再次感谢
#8
hsfisher2025-07-04 08:27
学习了
#9
chychychy2025-07-07 15:53
也班门弄斧一下,不过你原文件名最好不要叫“a”
程序代码:

SET SAFETY OFF
SELECT xxdm,xxmc FROM a GROUP BY 1,2 INTO CURSOR tmp &&&生成一临时文件过渡
SELECT tmp
SCAN
    wjm = ALLTRIM(xxdm) + ALLTRIM(xxmc)
    **如导出excel文件
    SELECT * FROM a WHERE a.xxdm = tmp.xxdm INTO CURSOR tmp1  &&&生成一临时文件过渡
    COPY TO (wjm) TYPE XL5  
   
    **如导出dbf文件可
    SELECT * FROM a WHERE a.xxdm = tmp.xxdm INTO DBF (wjm)
   
    SELECT tmp &&这句也可以省略
ENDSCAN



[此贴子已经被作者于2025-7-7 16:04编辑过]

#10
chychychy2025-07-07 17:48
回复 6楼 wengjl
请教
wjm =ALLTRIM(xxdm) + ALLTRIM(xxmc)
SELECT * FROM a WHERE alltr(a.xxdm) =xxdm INTO CURSOR  (wjm)
COPY TO (wjm) TYPE XL5  
这样提示语法错误,把 CURSOR换成dbf就可以。但是换成下面的就可以。什么原因?难道因为xxdm是0开头的数字,cursor 临时文件不可以吗?

程序代码:

wjm ="N"+ALLTRIM(xxdm) + ALLTRIM(xxmc)
SELECT * FROM a WHERE alltr(a.xxdm) =xxdm INTO CURSOR  (wjm)
COPY TO (wjm) TYPE XL5  




[此贴子已经被作者于2025-7-7 17:52编辑过]

1