| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3265 人关注过本帖
标题:请教 excle文件导入问题
只看楼主 加入收藏
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:451
帖 子:10607
专家分:43186
注 册:2014-5-20
收藏
得分:3 
回复 楼主 laibinhua
试试用SPT
EXCEL表
图片附件: 游客没有浏览图片的权限,请 登录注册

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

**    EXCEL2003及之前
**    Driver={Microsoft Excel Driver (*.xls)};
**    EXCEL2007及之后
**    Driver={Microsoft Excel Driver (*.xls, *.xlsx, *.xlsm, *.xlsb)};

CREATE CURSOR tt (f1 C(50),f2 C(50),f3 C(50),f4 I,f5 N(10,2),f6 N(12,2))
cFile = "C:\TEMP\导出excel\导出excel.xls"
cDSN = "Driver={Microsoft Excel Driver (*.xls)};";
    + "DBQ=" + cFile + ";"
hDSN = SQLSTRINGCONNECT(cDSN)
IF hDSN <= 0
   MESSAGEBOX("访问 "+cFile+" 文件失败")
   RETURN
ENDIF
**cSheet = "Sheet1$A1:F65500" && 选择区域
cSheet = "Sheet1$"
cSQL = "SELECT ";
    + "IIF(ISNULL(品名),'',品名) as f1,";
    + "IIF(ISNULL(规格),'',规格) as f2,";
    + "IIF(ISNULL(单位),'',单位) as f3,";
    + "IIF(ISNULL(数量),0, 数量) as f4,";
    + "IIF(ISNULL(单价),0, 单价) as f5,";
    + "IIF(ISNULL(金额),0, 金额) as f6 ";
    + "FROM [" + cSheet + "]"
IF SQLEXEC(hDSN, cSQL, "tmp") > 0
    SELECT tt
    APPEND FROM DBF("tmp")
    SELECT * FROM tt
    USE IN "tmp"
ELSE
    MESSAGEBOX("查询 "+cFile+" 文件数据失败")
ENDIF
SQLDISCONNECT(hDSN)
RETURN
2020-03-02 20:14
阿金679911
Rank: 1
等 级:新手上路
帖 子:14
专家分:7
注 册:2020-3-3
收藏
得分:3 
IMPORT FROM e:\123456.xls TYPE XL8 SHEET "123456"
2020-03-03 13:08
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:451
帖 子:10607
专家分:43186
注 册:2014-5-20
收藏
得分:0 
以下是引用阿金679911在2020-3-3 13:08:11的发言:

IMPORT FROM e:\123456.xls TYPE XL8 SHEET "123456"

试了一下,用楼主提供的文件:
IMPORT FROM C:\TEMP\导出excel\导出excel.xls TYPE XL8 SHEET "123456"
不行? 没出错提示,但整个VFP也关了,怎么回事?
运行环境:Win10+VFP9SP2
2020-03-03 17:15
xuminxz
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:41
帖 子:766
专家分:2517
注 册:2011-5-8
收藏
得分:0 
回复 13楼 吹水佬
还是文件格式的问题。
用你前面的方法很好。如果记录不是特别多Excel的格式不变用COM方式也很保险。

dBase有人接盘了。
2020-03-03 21:39
schtg
Rank: 12Rank: 12Rank: 12
来 自:Usa
等 级:贵宾
威 望:67
帖 子:1735
专家分:3329
注 册:2012-2-29
收藏
得分:0 
回复 13楼 吹水佬
我认为他的文件可能是wps转过来的。
2020-03-04 10:44
laibinhua
Rank: 2
等 级:论坛游民
威 望:1
帖 子:295
专家分:38
注 册:2010-12-23
收藏
得分:0 
回复 15楼 schtg
谢谢坛主的方法:完美解决
cDSN = "Driver={Microsoft Excel Driver (*.xls)};";
    + "DBQ=" + cFile + ";"
hDSN = SQLSTRINGCONNECT(cDSN)
2020-03-07 10:46
庆余年6789
Rank: 1
等 级:新手上路
帖 子:5
专家分:3
注 册:2020-3-7
收藏
得分:3 
学习
2020-03-07 11:13
快速回复:请教 excle文件导入问题
数据加载中...
 
   



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

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