| 网站首页 | 业界新闻 | 小组 | 交易 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
ADSL如何秒变专线,公网IP盒子了解一下千里之行 始于足下
共有 995 人关注过本帖
标题:xls2013如何导入vfp9.0
只看楼主 加入收藏
qq156059757
Rank: 1
等 级:新手上路
帖 子:77
专家分:9
注 册:2010-5-15
结帖率:83.33%
  已结贴   问题点数:20  回复次数:9   
xls2013如何导入vfp9.0
原来公司用的是vfp9.0    office2003  
现在由于系统更新 换成office2013了
那么问题来了,office2013不能另存为dbf格式的文件,无法导入到vfp中
用系统自带的导入后有一个问题,标题行不能导入,导入后的标题行是电子表格的行标,
想要实现表格的第一行作为标题
请问各位大神有什么思路,或者方法吗

[此贴子已经被作者于2018-12-12 10:52编辑过]

搜索更多相关主题的帖子: 导入 vfp9.0 系统 标题 电子表格 
2018-12-12 09:55
gs2536785678
Rank: 8Rank: 8
等 级:贵宾
威 望:16
帖 子:308
专家分:911
注 册:2017-7-16
  得分:4 
这是一个老问题了。从1997年开始,美国微软公司宣布,EXCEL不再支持VFP了。
你有两种选择
第一种,你另外安装个WPS。
第二种,你退回到EXCEL2003。

我的认识是这样的:如果你是依靠VFP吃饭的,建议你退回到EXCEL2003,因为
VFP与EXCEL的紧密联系,体现在EXCEL2003版本。
如果你只是业余爱好,你就另外安装个WPS吧。

我本人如今 WIN7+VFP9+EXCEL2003
2018-12-12 13:07
wengjl
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:77
帖 子:1679
专家分:2982
注 册:2007-4-27
  得分:4 
用OLE对象读取是可以的。得修改代码

只求每天有一丁点儿的进步就可以了
2018-12-12 14:55
星光悠蓝
Rank: 8Rank: 8
来 自:山水甲天下
等 级:贵宾
威 望:36
帖 子:353
专家分:933
注 册:2010-1-11
  得分:4 
V9+EXCEL2007我使用已是没问题
2018-12-12 18:13
sdta
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:江苏省连云港市
等 级:贵宾
威 望:188
帖 子:7795
专家分:19180
注 册:2012-2-5
  得分:4 
只要掌握了EXCEL VBA,其它的都不是问题。

坚守VFP最后的阵地
2018-12-12 18:49
whinda
Rank: 5Rank: 5
等 级:职业侠客
威 望:8
帖 子:215
专家分:382
注 册:2012-2-4
  得分:4 
读取第一条记录改成字段名很难吗?都走到门口了,不会再进一步?
2018-12-12 23:39
whinda
Rank: 5Rank: 5
等 级:职业侠客
威 望:8
帖 子:215
专家分:382
注 册:2012-2-4
  得分:0 
我以前用的,你可以参考下。
首先你第一条记录得符段命名规则、长度限制
程序代码:
*/óÃóúμ&#188ëXLSÎļtoó′|àíμúò»DDêy¾YÎaField
Procedure cFldName&&½«±í×Ö¶ÎÃûDT¸ÄÎaμúò&#187õ¼Ç¼¶&#212|μÄÄúèY,2¢é¾3yμúò&#187õ
    Lparameters cDBF
    If !Used(cDBF)
        Use (cDBF) In 0 Exclusive
    Endif
    Select &cDBF
    Local oldFldName,newFldName,lError
    For num=1 To Fcount()
        oldFldName=Field(num)
        newFldName=Alltrim(&oldFldName)
        Try
            Alter Table &cDBF Rename (oldFldName) To (newFldName)
        CATCH TO oexception
            lError=.T.
            =MESSAGEBOX(oexception.message,64,'Hints',5000)
        Endtry
    Endfor
    Go 1
    Delete
    Pack
    If lError
        Return -1
    Else
        Return 0
    Endif
Endproc

2018-12-12 23:47
wangzhiyi
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:28
帖 子:341
专家分:621
注 册:2014-4-9
  得分:4 
两种方法:第一,在你的电脑上同时安装office2003和2013,具体方法是先安装excel2003,再安装2013,在安装2013时,选择保留较早版本。
第二,学学如何用VFP控制EXCEL,也就是说写程序从EXCEL文件里读数据写到DBF文件里。
2018-12-13 15:46
wengjl
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:77
帖 子:1679
专家分:2982
注 册:2007-4-27
  得分:0 
*!* 1.创建Excel对象
oExcel=Createobject("Excel.application")
*!* 2.添加新工作簿
oExcel.Workbooks.Add
oExcel.WorkSheets.Count  获取工作表数量
*!* 3.设置第3个工作表为激活工作表
oExcel.Worksheets("sheet3").Activate
*!* 4.打开指定工作簿
oExcel.Workbooks.Open("c:/temp/ll.xls")
*!* 5.显示Excel窗口
oExcel.Visible=.T.
eole.visible=.T.                                         && 显示Excel窗口
eole.visible=.F.                                         && 不显示Excel窗口
eole.Application.WindowState = xlNormal                  && Excel 窗口还原
eole.Application.WindowState = xlMaximized               && Excel 窗口最大化
eole.Application.WindowState = xlMinimized               && Excel 窗口最小化
其中:xlNormal=-4143;xlMaximized=-4137;xlMinimized=-4140
*!* 6.更改Excel标题栏
oExcel.Caption="VFP应用程序调用Microsoft Excel"
*!* 7.给单元格赋值
oExcel.cells(1,4).Value=XM(XM为数据库字段名)
*!* 8.设置指定列的宽度(单位:字符个数)
oExcel.ActiveSheet.Columns(1).ColumnWidth=5
*!* 9.设置指定行的高度(单位:磅)
oExcel.ActiveSheet.Rows(1).RowHeight=1
(设定行高为1磅,1磅=0.035厘米)
oExcel.ActiveSheet.Rows("50:100").RowHeight=1 &&设置第50行至100行的高度

只求每天有一丁点儿的进步就可以了
2018-12-13 16:23
xmwld
Rank: 1
等 级:新手上路
帖 子:12
专家分:7
注 册:2010-11-13
  得分:0 
大开眼界,学习了,谢谢
2019-01-04 17:35







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

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