Office中国论坛/Access中国论坛

标题: 请教如何转换EXCEL版本从97到2000 [打印本页]

作者: 竹笛    时间: 2003-2-14 16:47
标题: 请教如何转换EXCEL版本从97到2000
由于PB导出来的数据格式为EXCEL97,我用ACCESS2000链接此EXCEL表时提示格式不对,现在的状况是每次从PB导出后,打开EXCEL一次,存盘改为2000格式,总觉得不是个味道,请教如何用代码将EXCEL97转换为2000格式。

例如:D:\NEW\heats_kc_bj.XLS    '这是EXCEL97文件
代码不能写在EXCEL文件中,因为我导出一次,这个文件就换了一次。我必须将代码写在ACCESS2000中。
作者: yorkjun    时间: 2003-2-14 18:41
用TransferSpreadSheet命令可以指定导入的Excel的版本。
作者: 竹笛    时间: 2003-2-14 19:11
Private Sub aaaa_Click()

Dim tblaaaa As String
DoCmd.TransferSpreadsheet,acImport,acSpreadsheetTypeExcel7, "tblaaaa", "C:\111111111.XLS", True


End Sub

提示格式不对,关键好象在于acSpreadsheetTypeExcel7这个参数,我从3试到全部,都不行。

作者: 竹笛    时间: 2003-2-14 19:13
代码运行后错误提示如图:

作者: yorkjun    时间: 2003-2-14 20:19
多看帮助,多试试。
你把“acSpreadsheetTypeExcel7”用“5”或是“8”代替试一下。
不一定要写全的,只写“5”或“8”


[此贴子已经被作者于2003-2-14 12:18:54编辑过]


作者: 竹笛    时间: 2003-2-14 20:38

关于替代我都试了,不能解决问题,看来此方法不通。
[quote]以下是引用yorkjun在2003-2-14 12:18:54的发言:
多看帮助,多试试。
你把“acSpreadsheetTypeExcel7”用“5”或是“8”代替试一下。
不一定要写全的,只写“5”或“8”

作者: Roadbeg    时间: 2003-2-15 01:05
可以考虑这样做:
先用 Access 调用 Excel 完成转换并保存
再用 TransferSpreadSheet 导入

作者: 竹笛    时间: 2003-2-15 04:59
嘻嘻,估计这样是可以,用代码先打开这个文件,再保存,明天试试。

谢了。
作者: Roadbeg    时间: 2003-2-15 05:04
这样可能是无效的,因为你没有对 Excel 文件做任何更改,所以 Excel 可能根本就不会保存什么.
调用 Excel 的另存功能应更有效.
不过,我想.Excel 的相关对象中应该有一个方法 是用于转换的.
只不过 是哪一个方法 就要慢慢去试了.
作者: 竹笛    时间: 2003-2-15 15:58
那我就在某单元格写入一个字符后保存。谢谢Roadbeg.
作者: 竹笛    时间: 2003-2-15 17:45
在ACCESS中用代码打开EXCEL文件,再保存,事实上版本格式并未改变,哪怕写入字符也不行,看来此办法是不可行的。

请大家赐教!




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3