ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 Excel Home精品图文教程库
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
300集Office 2010微视频教程 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 4764|回复: 3

[分享] VFP数据库与EXCEL数据传递解决方法案例

[复制链接]

TA的精华主题

TA的得分主题

发表于 2009-7-2 22:16 | 显示全部楼层 |阅读模式
在人力资源工作中,会遇到其它文件与EXCEL传送数据的问题,我在负责保险的工作时,常用DBF文件,DBF文件存放数据比较齐全,会编写程序,但对于一些部门提出在EXCEL文件数据传递的要求,如:医疗保险部门的基数变更,常感到束手无策。于是,研究开发了一些实用小程序,有的是在VFP环境下的,也有在VBA环境下的,下面的程序是在VFP环境下写的,该程序完成把数据库中的数据传给EXCEL相关的单元格,关键字是身份证(社会保障号)和姓名字段。图片是文件的结构。下面给出代码。
close data
clear
lie1=1
lie11=2
lie2=4  &&替换数据列号
ef=CREATEOBJECT('Excel.application')
&&开始创建EXCEL对象
ef.Application.Caption="VFP向EXCEL传入数据"
ef.Workbooks.open("D:110232.xls")
ef.Worksheets("BatchInput").Activate

ef.visible=.t.    &&显示EXCEL界面
select 0
USE D:83500.DBF  &&打开数据库文件
scan   &&数据库记录开始循环
? recn()
for n=2 to 75 &&根据EXCEL数据行,来确定起始行数
    if TRIM(ef.CELLS(n,lie1).VALUE)=TRIM(社会保障号).and.TRIM(ef.CELLS(n,lie11).VALUE)=TRIM(姓名)
       ef.CELLS(n,lie2).VALUE=ygz07   
       next for
    endif
next
endscan
ef.ActiveWorkbook.save()
ef.quit
wait "运行完成" windows nowaitiejue

[ 本帖最后由 weiguoyin868 于 2010-10-7 20:54 编辑 ]
excelt.JPG
dbft.JPG
头像被屏蔽

TA的精华主题

TA的得分主题

发表于 2010-9-16 01:38 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽

TA的精华主题

TA的得分主题

发表于 2012-9-3 01:26 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
标记学习,谢谢楼主分享。
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-6-11 00:40 , Processed in 0.038266 second(s), 11 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表