Foxpro 导入文件报错:无效的 Microsoft Excel 文件格式

合集下载

关于VFP输出EXCEL的格式

关于VFP输出EXCEL的格式

关于VFP输出EXCEL的格式以下是我在处理 VFP 输出 EXCEL 报表时用的一段程序片段,以供参考。

如有更好的建议,亦请拿出来讨论讨论。

tmpsheet = GETOBJECT('','excel.sheet')if .not. ( type('tmpsheet')='O' ) && U 未能产生EXCEL对象=messagebox( '创建报表失败!' + CHR(13) + CHR(13) + ;'请检查你的系统是否正确安装 EXCEL 软件!' + CHR(13) + CHR(13) + ;'请联络系统管理员' + CHR(13) + ;'', 48, '')returnendifxlapp = tmpsheet.APPLICATIONxlapp.VISIBLE = .f.=messagebox( '准备生成月帐单' + CHR(13) + CHR(13) + ;'日期:' + dtoc(tt_this_day) + CHR(13) + CHR(13) + ;'如有在使用 EXCEL ,请暂时不要使用打印预览功能!!!' + CHR(13) + CHR(13) + ;'报表生成的过程中,请暂时不要使用计算机', 48, '')* wait wind '正在生成'+ form_title +'报表,请稍侯......' nowait***! 创建excel打印对象 *****xlapp.workbooks.ADD()xlapp.ActiveWindow.WindowState = 2 && 最大化打开的工作本xlsheet = xlapp.activesheetlc_name = allt(file_name_check( &temp_dls2_a..kh_mc )) = lc_name***! 创建excel打印对象 *****xlsheet.Columns("A:G").Font.Size = 9 && 选择列xlsheet.Columns("A:A").ColumnWidth = 10 && 设置列宽度xlsheet.Columns("B:B").ColumnWidth = 15 && 设置列宽度xlsheet.Columns("C:C").ColumnWidth = 16 && 设置列宽度xlsheet.Columns("D:D").ColumnWidth = 16 && 设置列宽度xlsheet.Columns("E:E").ColumnWidth = 8 && 设置列宽度xlsheet.Columns("F:F").ColumnWidth = 10 && 设置列宽度xlsheet.Columns("G:G").ColumnWidth = 8 && 设置列宽度xlsheet.Columns("A:A").NumberFormatLocal = "@ "xlsheet.Columns("B:B").NumberFormatLocal = "@ "xlsheet.Columns("C:C").NumberFormatLocal = "@ "xlsheet.Columns("D:D").NumberFormatLocal = "@ "xlsheet.Columns("E:E").NumberFormatLocal = "0 "xlsheet.Columns("F:F").NumberFormatLocal = "0.00_ "xlsheet.Columns("G:G").NumberFormatLocal = "@ "xlsheet.Rows("5:5").ShrinkT oFit = .t. && 自动收缩为适当尺寸以适应有效列宽xlsheet.Rows("5:5").HorizontalAlignment = 3 && 水平 1左对齐,3居中,4右对齐xlsheet.Rows("1:2").HorizontalAlignment = 3 && 水平 1左对齐,3居中,4右对齐* xlsheet.Columns("G:G").ShrinkToFit = .t. && 自动收缩为适当尺寸以适应有效列宽***! 设置页面信息 *****In_Po = 0.0393700787401575 && 将度量单位从英寸转换为磅基础单位: 0.0393700787401575英寸 -> 0.1磅xlsheet.PageSetup.LeftMargin = xlapp.Application.InchesT oPoints( In_Po * 10 )xlsheet.PageSetup.RightMargin = xlapp.Application.InchesT oPoints( In_Po * 10 )xlsheet.PageSetup.TopMargin = xlapp.Application.InchesT oPoints( In_Po * 10 )xlsheet.PageSetup.BottomMargin = xlapp.Application.Inche sToPoints( In_Po * 20 )xlsheet.PageSetup.HeaderMargin = xlapp.Application.Inche sToPoints( In_Po * 10 )xlsheet.PageSetup.FooterMargin = xlapp.Application.Inches ToPoints( In_Po * 10 )xlsheet.PageSetup.Orientation = 1 && 设置打印方向: 1 纵向 2横向xlsheet.PageSetup.PrintTitleRows = "$1:$7" & & 设置每页的页头xlsheet.PageSetup.RightFooter = "第 &P 页,共 &N 页"xlsheet.PageSetup.CenterHorizontally = .t. && 页面水平居中***! 设置页面信息 ********! 生成打印内容 *****xlsheet.Cells( 2,1).VALUE = "帐单时间:" + t_this_yy + '年 '+t_this_mm + '月'xlsheet.Cells( 3,1).VALUE = "客户名称:"+ allt(&temp_dls2_a..khmc)xlsheet.Cells( 4,1).VALUE = "客户帐号:"+ allt(&temp_dls2_a..zh)prn_line = 5xlsheet.Cells( prn_line, 1).VALUE = "主叫号码"xlsheet.Cells( prn_line, 2).VALUE = "被叫号码"xlsheet.Cells( prn_line, 3).VALUE = "开始时间"xlsheet.Cells( prn_line, 4).VALUE = "结束时间"xlsheet.Cells( prn_line, 5).VALUE = "时长"xlsheet.Cells( prn_line, 6).VALUE = "话费(元)"xlsheet.Cells( prn_line, 7).VALUE = "计费标识"lc_min_col = 1lc_max_col = 7for lo_Col = lc_min_col to lc_max_colxlsheet.Cells( prn_line,lo_Col).Borders(4).Weight = 2 &&框线宽度: 2细线 3粗线endforprn_line = prn_line + 1lc_sum_brhj = 0lc_sum_bybrlj = 0sele &dbf_j_yjd_acount to max_slsum &dbf_j_yjd_a..dj to sum_djgo topscanwait wind '处理'+ lc_name + ' 第'+ str(recno()) + ' 总数:'+str(max_sl) nowaitxlsheet.Cells( prn_line, 1).VALUE = allt(&dbf_j_yjd_a..zjhm) xlsheet.Cells( prn_line, 2).VALUE = allt(&dbf_j_yjd_a..bdhm) xlsheet.Cells( prn_line, 3).VALUE = allt(&dbf_j_yjd_a..riqi)xlsheet.Cells( prn_line, 4).VALUE = allt(&dbf_j_yjd_a..riqi2)xlsheet.Cells( prn_line, 5).VALUE = &dbf_j_yjd_a..fzxlsheet.Cells( prn_line, 6).VALUE = &dbf_j_yjd_a..djxlsheet.Cells( prn_line, 7).VALUE = allt(&dbf_j_yjd_a..jfbs)prn_line = prn_line + 1endscanfor lo_Col = lc_min_col to lc_max_colxlsheet.Cells( prn_line,lo_Col).Borders(3).Weight = 2 &&框线宽度: 2细线 3粗线endforxlsheet.Range("A1:G1").MergeCells = .t. && 合并单元格xlsheet.Range("A2:G2").MergeCells = .t. && 合并单元格xlsheet.Range("A3:G3").MergeCells = .t. && 合并单元格xlsheet.Range("A4:G4").MergeCells = .t. && 合并单元格xlsheet.Range("A5:G5").MergeCells = .t. && 合并单元格xlsheet.Rows("1:1").Font.Size = 11 && 选择行xlsheet.Rows("1:1").Font.Bold = .t.xlsheet.Rows("1:2").RowHeight = 18.00 && 设置行宽度xlsheet.Rows("4:4").HorizontalAlignment = 4 && 水平 1左对齐,3居中,4右对齐xlsheet.Rows("5:5").HorizontalAlignment = 1 && 水平 1左对齐,3居中,4右对齐*! 完成删除提示按扭 *****file_name = all_path + lc_name + '.xls'if file( file_name) = .t.chr(7)result=messagebox( file_name +'已存在,要替换该文件吗? ', 4+48+256, '' )if result=6ERASE &file_namexlapp.activeWorkbook.SaveAs( file_name )endifelsexlapp.activeWorkbook.SaveAs( file_name )endifxlapp.activeWorkbook.close(.f.)endifendscanxlapp = tmpsheet.APPLICATIONxlapp.activeWorkbook.close(.f.)xlapp.quit=messagebox( '已完成报表输出!', 48, '')return。

excel软件的数据导入功能有哪些常见问题

excel软件的数据导入功能有哪些常见问题

excel软件的数据导入功能有哪些常见问题Excel 软件的数据导入功能有哪些常见问题在日常办公和数据处理中,Excel 软件凭借其强大的功能和易用性,成为了许多人不可或缺的工具。

其中,数据导入功能更是为我们获取和整合外部数据提供了便利。

然而,在使用这一功能时,也常常会遇到一些问题。

接下来,让我们详细探讨一下 Excel 软件的数据导入功能常见的一些问题。

一、格式不兼容这是数据导入中较为常见的问题之一。

当我们从外部数据源(如CSV 文件、数据库、文本文件等)导入数据时,如果这些数据的格式与 Excel 的期望格式不匹配,就可能导致导入出错或数据显示异常。

例如,日期格式在不同的系统和软件中可能有不同的表示方式。

有些数据源中的日期可能是“YYYYMMDD”格式,而 Excel 期望的可能是“MM/DD/YYYY”格式。

如果在导入时没有正确处理这种格式差异,日期数据可能会被识别为文本,甚至出现错误的值。

同样,数字格式也可能引发问题。

如果数据源中的数字包含千位分隔符、小数点等,而 Excel 在导入时无法正确识别这些格式设置,可能会导致数字显示错误或被当成文本处理。

二、数据丢失或截断在数据导入过程中,有时会出现部分数据丢失或被截断的情况。

这可能是由于以下原因导致的:1、字段长度限制:Excel 对每个单元格所能容纳的数据长度有一定的限制。

如果导入的数据长度超过了这个限制,超出的部分可能会被截断。

2、数据类型不匹配:当数据类型与 Excel 中的列数据类型不匹配时,例如将过长的文本导入到数值型列中,可能会导致数据丢失。

三、重复数据如果导入的数据中存在重复的行或记录,可能会影响后续的数据分析和处理。

重复数据可能是由于数据源本身就存在重复,或者在导入过程中由于设置不当导致的重复导入。

四、编码问题不同的数据源可能使用不同的字符编码方式,如 UTF-8、GBK 等。

如果 Excel 在导入时无法正确识别数据源的编码方式,可能会导致字符显示乱码,影响数据的可读性和准确性。

excel表格的后缀名无效的解决方法步骤图

excel表格的后缀名无效的解决方法步骤图

excel表格的后缀名无效的解决方法步骤

Excel该如何解决后缀名无效呢?接下来是为大家带来的excel 表格的后缀名无效的解决方法,供大家参考。

excel表格的后缀名无效的解决方法后缀名无效步骤1:首先来看一下案发现场的高清图片。

在打开文档是弹出的提示框。

excel表格的后缀名无效的解决方法图1后缀名无效步骤2:首先关闭文档,将文档进行重命名,如图所示。

备注:如果有些电脑上文档没有显示文档的xls或者xlsx后缀的可以参考本人的其他文章:如何隐藏/显示文件的后缀名。

excel表格的后缀名无效的解决方法图2后缀名无效步骤3:将文档的后缀“xlsx”修改为“xls”即可。

备注:或者把“xls”修改为“xlsx”。

excel表格的后缀名无效的解决方法图3excel表格的后缀名无效的解决方法图4后缀名无效步骤4:重命名确认后再重新打开文档,一切恢复正常。

excel表格的后缀名无效的解决方法图5后缀名无效步骤5:对于此类问题,在excel中也经常会出现,解决方法是一样的,具体可以参考本人其他经验。

excel表格的后缀名无效的解决方法图6。

使用Excel进行数据导入时的常见问题及解决方法

使用Excel进行数据导入时的常见问题及解决方法

使用Excel进行数据导入时的常见问题及解决方法使用Excel进行数据导入是许多人在工作中经常遇到的任务。

然而,由于Excel的复杂性和功能众多,导入数据时常常会遇到一些问题。

本文将针对使用Excel进行数据导入时的常见问题进行分析,并提供解决方法。

一、数据格式不匹配在导入数据时,经常会遇到数据格式不匹配的问题。

例如,导入的数据中包含日期、时间、货币等格式,而Excel默认的格式与导入数据的格式不一致。

这可能导致数据显示不正确,或者无法正确进行计算。

解决方法:1. 在导入数据前,先将Excel中的单元格格式调整为与导入数据相匹配的格式。

例如,如果导入的数据包含日期,可以将单元格格式设置为日期格式。

2. 在导入数据时,使用Excel的数据导入向导。

该向导可以根据导入的数据类型自动调整单元格格式。

二、数据丢失或重复在导入数据时,有时会发现部分数据丢失或重复。

这可能是由于数据源文件中的数据格式不规范,或者在导入过程中出现了错误。

解决方法:1. 在导入数据前,先对数据源文件进行清洗。

删除重复数据、修复格式错误等,确保数据源文件中的数据是准确且规范的。

2. 在导入数据时,仔细检查导入设置。

确保选择了正确的数据源文件,并设置了正确的导入选项,如数据范围、分隔符等。

三、数据量过大导致Excel崩溃当导入的数据量过大时,Excel可能会因为内存不足而崩溃或运行缓慢。

这对于需要处理大量数据的用户来说是一个常见的问题。

解决方法:1. 在导入数据前,先将数据源文件进行分割。

将大文件分割成多个较小的文件,然后分别导入。

这样可以减轻Excel的负担,提高导入效率。

2. 使用Excel的数据透视表功能。

数据透视表可以对大量数据进行汇总和分析,而不需要一次性加载所有数据。

这可以减少Excel的内存占用,提高导入和处理大数据的效率。

四、数据导入后格式错乱有时,在导入数据后,数据的格式可能会出现错乱。

例如,文本数据变成了数字,日期数据变成了文本等。

VFP错误信息编号

VFP错误信息编号

****** *错误日期*。

*** 不能分配屏幕映象*** 不能创建程序工作空间。

*** 不能找到拼写检查程序。

*** 找不到修饰程序。

*** 找不到拼写检查程序。

*** 找不到向导程序。

*** 不能打开配置文件。

*** 致命错误nExpr 报告错误nExpr。

*** *中断*。

*** 无效的压缩EXE 文件。

重建EXE。

*** 无效或重复的字段名称。

*** 无效的或丢失EXE 文件。

*** 要求逻辑表达式*** 弹式菜单太大, 只显示前nExpr 项。

*** 产品没有正确地安装。

*** 源代码未找到。

*** 源代码过期。

*** 远程视图向导不能从远程表获取列信息。

可能是因为一个ODBC 错误造成, 或者远程表不属于当前用户。

*** 不能定位希望的Visual FoxPro 版本。

*** 不能处理的错误。

*** 未知的错误码nExpr。

*** 不能启动Visual FoxPro。

11 文件不存在。

3 文件正在使用。

4 已到文件尾。

5 记录超出范围。

6 打开的文件太多。

7 文件已存在。

9 数据类型不匹配。

10 语法错误。

11 函数参数的值、类型或数目无效。

12 找不到变量“变量”。

13 找不到别名。

15 不是一个表。

16 不能识别的命令谓词。

17 表编号无效。

18 行太长。

19 索引文件与表不匹配。

20 记录不在索引中。

21 变量字符串的长度超过了内存容量。

22 变量太多。

23 索引表达式超出最大长度。

24 别名已被使用。

26 表没有设置排序索引。

27 不是数值表达式。

30 行或列位置超出屏幕。

31 无效的下标引用34 对备注字段、通用字段或图片字段此操作无效。

36 命令中含有不能识别的短语或关键字。

37 filter 子句中必须使用逻辑表达式。

38 已到文件头。

39 数值上溢。

数据丢失。

41 备注文件“名称”缺少或无效。

42 Locate 命令必须在continue 命令之前发布。

43 无足够内存完成此操作。

Excel数据导入导出常见问题解决方法

Excel数据导入导出常见问题解决方法

Excel数据导入导出常见问题解决方法在日常工作中,我们经常会使用Excel来进行数据的导入和导出。

然而,由于Excel的复杂性和功能的多样性,我们经常会遇到一些问题。

本文将介绍一些常见的问题以及解决方法,希望能够帮助大家更好地应对这些问题。

一、乱码问题在进行数据导入和导出时,有时候会遇到乱码的情况。

这可能是由于文件编码不一致导致的。

为了解决这个问题,我们可以尝试以下几种方法:1. 检查文件编码:在导入或导出数据之前,可以先检查文件的编码格式。

在Excel中,可以通过点击“文件”-“另存为”-“工具”-“选项”来查看文件的编码格式。

如果发现文件编码不一致,可以尝试将文件转换为相同的编码格式,然后重新导入或导出数据。

2. 使用文本导入向导:如果导入的数据是文本格式的,可以尝试使用Excel的文本导入向导来导入数据。

在导入过程中,可以选择适当的编码格式,以确保数据正常显示。

3. 使用数据转换工具:如果导入的数据包含特殊字符或非标准编码,可以尝试使用数据转换工具来处理数据。

这些工具可以将数据转换为标准的编码格式,以避免乱码问题。

二、数据格式问题在进行数据导入和导出时,有时候会遇到数据格式不一致的问题。

这可能是由于Excel的默认格式与源数据格式不一致导致的。

为了解决这个问题,我们可以尝试以下几种方法:1. 设置列格式:在导入或导出数据之前,可以先设置列的格式。

在Excel中,可以通过选中列,然后右键点击选择“格式单元格”来设置列的格式。

可以选择适当的数据格式,以确保数据导入或导出时格式一致。

2. 使用文本格式:如果导入的数据包含特殊字符或日期格式,可以尝试将数据格式设置为文本格式。

这样可以避免Excel自动转换日期或特殊字符的问题。

3. 使用数据转换工具:如果导入的数据包含复杂的格式,可以尝试使用数据转换工具来处理数据。

这些工具可以将数据转换为标准的格式,以确保数据导入或导出时格式一致。

三、数据丢失问题在进行数据导入和导出时,有时候会遇到数据丢失的问题。

导出excel发生的错误OLEerror800A03EC

导出excel发生的错误OLEerror800A03EC

导出excel发生的错误OLEerror800A03EC
2005-11-12
20:23:17 关于:
treemon 提出的问题:
导入excel发生的错误
OLE error 800A03EC
这真是个神奇的问题
----------
我按照gyhb 的方法安装
多谢gyhb,写得非常详细周到
安装时唯一的问题是第6步,有两个dpk 不能编译
但应该没有问题- 这两个文件从文件名看应该是老版本的文

完了之后,目前没有发现限制
然后就发现在导出到xls 时出现和treemon 完全一样的
“OLE error 800A03EC”错误
我在竭力网上搜索无果,决定自己跟踪
意外发现该问题竟然是“如此简单”?
xls表示若干列/行的字符串语法中,分隔符
在frxExportXLS 里,写为分号
如treemon 指出的那一句:
v := WorkSheet.Range[s];//错误在这里
其中s大概长得这个样子:
‘a1;a3;a5‘
我试着将分隔符改为逗号,竟然意外的成功了...
我将s内容直接改为:
‘a1,a3,a5‘
就没问题了
然后,最终解决方案,就是在frxExportXLS 这个文件里,搜索所有的‘;‘,改为‘,‘就成了
注意搜索的时候,是包括单引号来搜,可以搜到两个
else s := s + ‘;‘+ aRanges[i]
改为
else s := s + ‘,‘+ aRanges[i]
----------
问题解决后,我依然觉得很奇怪:
如果错误是这么来的,为什么其他人没有遇到这个问题??
是不是xls 在某些设置下,是支持分号分隔符的??。

excel打不开文件提示格式无效怎么办

excel打不开文件提示格式无效怎么办

excel打不开文件提示格式无效怎么办
在excel表格提示不能识别的时候,其原因一般都是excel版本无法兼容的原因,该怎么呢,下面让店铺为你带来excel打不开提示文件格式无效的解决方法。

希望对你有帮助!
excel打不开文件提示格式无效的解决方法
首先明确故障现象,打开excel出现如图情况
因为WPS能对excel的兼容性比较好,建议出现上文所提的情况时,下载WPS安装是比较好的解决方法,当然,你有更好的软件也可以。

首先百度搜索然后下载安装软件。

3安装WPS之后,右键选择打开方式为WPS,然后打开文件。

4这样,文件可以正常打开了,那么说明该软件能解决上面的问题。

如果每次都要这样操作一遍会很麻烦,所以我们要将打开EXCEL的默认打开方式设置为WPS才行。

5右键选中文件,再点击属性。

6在属性界面中,点击打开方式后面的更改,然后选中WPS表格,再点击确定。

这样,问题就彻底解决了。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Foxpro 导入文件报错:"无效的Microsoft Excel 文件格式"
症状:将一个 Microsoft Excel 版本 5.0 文件导入 FoxPro 时出现"无效的 Microsoft Excel 文件格式"错误信息。

症状拓展:如果使用的是 FoxPro 2.0 ,导入 Microsoft Excel 3.0 ,4.0 或 5.0 文件设置格式,则会收到错误信息"无效的 Excel 版本 2.0 文件"。

直接原因:FoxPro 2.0 仅可以导入 Microsoft Excel 2.0 文件。

FoxPro 2.5 for MS-DOS、Windows 和 Macintosh 可以导入 Microsoft Excel 2.0、 3.0 和 4.0 格式中的文件。

溯源:FoxPro 2.5 后,才发布 for MS-DOS 和 Windows 的开发。

FoxPro for Macintosh 是大约同时为 Microsoft Excel 5.0 for Windows 开发的。

因此,支持导入 Microsoft Excel 5.0 格式的文件没有内置FoxPro 2.5。

Microsoft 已经确认这是Microsoft 产品中存在的问题并正在研究此问题,当它变得可用时,将发布新的信息的 Microsoft 知识库。

解决方案:要直接导入 Microsoft Excel 5.0 工作表,必须在 Microsoft Excel 中执行变通办法。

这些变通办法有:保存 Microsoft Excel 5.0 文件作为一个 Microsoft Excel 4.0、3.0 或 2.0 格式的文件,再执行导入操作。

或者将 Microsoft Excel 5.0 文件保存为一个DBF 格式文件。

(要点:以 DBF3 文件格式保存;此外,Microsoft Excel 3.0、 4.0 和5.0 可以以 DBF4 文件格式保存文件。

)FoxPro 可以打开这些两种文件格式之一。

参考文献:
FoxPro for MS-DOS 和 Windows 语言参考,版本 2.5,页 L3-569 和 L3-570
FoxPro for Macintosh 语言参考,版本 2.5,页 468-469
Microsoft Excel 用户指南 1,版本 4.0、 60、 306 和 307 页。

相关文档
最新文档