| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3060 人关注过本帖
标题:导入Excel表格数据
只看楼主 加入收藏
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:0 
回复 10楼 xs591222
谢谢,可以打开了。

坚守VFP最后的阵地
2017-03-05 23:32
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:0 
程序代码:
* 结果表
CREATE CURSOR 结果表 (分类 c(14),城市生活 n(8,2),农村生活 n(8,2),农业 n(8,2),二三产业 n(8,2),生态环境 n(8,2),小计 n(8,2),月份 c(4))
* 参数表
CREATE CURSOR BZ (R1 N(4),C1 N(4),RS N(2),CS N(2),月份 C(4)) && r1 代表第N行,c1 代表第N列,rs 代表N行,cs 代表N列
INSERT INTO BZ VALUES (4,2,5,6,"1月")
INSERT INTO BZ VALUES (4,8,5,6,"2月")
INSERT INTO BZ VALUES (11,2,5,6,"3月")
INSERT INTO BZ VALUES (11,8,5,6,"4月")
INSERT INTO BZ VALUES (18,2,5,6,"5月")
INSERT INTO BZ VALUES (18,8,5,6,"6月")
* [color=#800000]7-12月份的自己添加[/color]
LOCAL AFL[5,7]
* 分类内容保存在数组中
AFL[1,1]="当地地表水"
AFL[2,1]="当地地下水"
AFL[3,1]="南部山区来水"
AFL[4,1]="弥河水"
AFL[5,1]="非常规水源"
EOLE=CREATEOBJECT('EXCEL.APPLICATION')
LCFILENAME=GETFILE([XLS]) && 此处 XLS 改为EXCEL2010文件的扩展名
IF EMPTY(LCFILENAME)
    RETURN
ENDIF
EOLE.WORKBOOKS.OPEN(LCFILENAME)
EOLE.WORKSHEETS(2).ACTIVATE && 2020年调度方案
SELECT bz
SCAN
    LNROW=EOLE.SHEETS(2).ROWS.COUNT
    LNCOL=EOLE.SHEETS(2).COLUMNS.COUNT
    LOCAL AXLS[LNROW,LNCOL]
    AXLS=EOLE.ACTIVESHEET.CELLS(r1,c1).RESIZE(rs,cs).VALUE
    CREATE CURSOR tt (分类 c(14),城市生活 n(8,2),农村生活 n(8,2),农业 n(8,2),二三产业 n(8,2),生态环境 n(8,2),小计 n(8,2),月份 c(4))
    INSERT INTO tt FROM ARRAY afl
    REPLACE 月份 WITH bz.月份 ALL
    REPLACE FROM ARRAY axls FIELDS 城市生活,农村生活,农业,二三产业,生态环境,小计 all
    INSERT INTO 结果表 SELECT * FROM tt
ENDSCAN 
EOLE.QUIT
RELEASE EOLE
SELECT 结果表
BROWSE 

效果图
图片附件: 游客没有浏览图片的权限,请 登录注册



[此贴子已经被作者于2017-3-5 23:50编辑过]


坚守VFP最后的阵地
2017-03-05 23:34
antony521
Rank: 3Rank: 3
等 级:论坛游侠
威 望:1
帖 子:170
专家分:175
注 册:2009-8-20
收藏
得分:0 
回复 12楼 sdta
AXLS=EOLE.ACTIVESHEET.CELLS(r1,c1).RESIZE(rs,cs).VALUE
这句.RESIZE(rs,cs)给解释一下.谢谢!
2017-03-06 09:11
antony521
Rank: 3Rank: 3
等 级:论坛游侠
威 望:1
帖 子:170
专家分:175
注 册:2009-8-20
收藏
得分:0 
回复 12楼 sdta
AXLS=EOLE.ACTIVESHEET.CELLS(r1,c1).RESIZE(rs,cs).VALUE
这句.RESIZE(rs,cs)给解释一下.谢谢!
2017-03-06 09:12
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:0 
回复 14楼 antony521
rs 选中数据的行数
cs 选中数据的列数

楼主每个月的数据是5行6列,看参数表中的数据就明白了

[此贴子已经被作者于2017-3-6 11:22编辑过]


坚守VFP最后的阵地
2017-03-06 11:21
antony521
Rank: 3Rank: 3
等 级:论坛游侠
威 望:1
帖 子:170
专家分:175
注 册:2009-8-20
收藏
得分:0 
回复 15楼 sdta
是.RESIZE()不明白.看字面是重新定义范围.以前没见过这样用的才问的
2017-03-07 10:17
jjoojj
Rank: 1
等 级:新手上路
帖 子:59
专家分:0
注 册:2014-8-12
收藏
得分:0 
我碰到这样的问题,excel导入时,提示:excel文件格式无效,这个excel带有宏,因为同时又几十个表格要导入,若将每个excel档打开,另存为excel5.0比较麻烦,有什么可以解决。谢谢!
2017-03-07 11:42
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:0 
回复 17楼 jjoojj
不明白的楼主的意思

坚守VFP最后的阵地
2017-03-07 11:46
jjoojj
Rank: 1
等 级:新手上路
帖 子:59
专家分:0
注 册:2014-8-12
收藏
得分:0 
以下是引用sdta在2017-3-7 11:46:56的发言:

不明白的楼主的意思
导入excel档,出错,因为这个excel带有宏,打开excel,并另存不带宏的excel文件,能用编程的方法解决吗

[此贴子已经被作者于2017-3-7 14:33编辑过]

2017-03-07 11:47
快速回复:导入Excel表格数据
数据加载中...
 
   



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

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