设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

12下一页
返回列表 发新帖
查看: 4140|回复: 14
打印 上一主题 下一主题

[基础应用] 恳请老鬼版主看看Excel连接表数据转移问题!

[复制链接]

点击这里给我发消息

跳转到指定楼层
1#
发表于 2004-12-12 06:58:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
老鬼版主:您好!这是大熊版主帮忙过的帖子,在office2003版本上可以使用,在2000上不能使用。请您指点一下如何在2000上也可使用.谢谢!

[em06]

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2004-12-12 08:28:00 | 只看该作者
我看了源代码,其原理是调用EXCEL程序打开未绑定的控件对象。你双击插入的工作表对象,看能不能调出EXCEL进行编辑,如果行,那段源码就能运行,如果不行,应该会提示安装。如果安装不了,那就没办法了。我的OFFICE无法安装那个功能,原因不明,我得再查一查。
3#
发表于 2004-12-12 21:17:00 | 只看该作者


应该是高版本的数据库中的"引用库"在低版本的数据库中不能识别的问题(库中定义了VBA可以识别的资源).

从office2000所在机器上的VBA工程窗口中看一下,

工具-引用中是不是少了附件图片中蓝笔标的内容;

office2003下作的数据库,引用的内容是 : Microsoft Excel 11.0 Object Library

office2000中对应的内容好像应该是:Microsoft Excel 10.0 Object Library;

可以拉动滚动条找,找到Microsoft Excel 10.0 Object Library,在前面打勾即可,如果没有,就只好把office2000重新刷新一边,或者用office 2003了.

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
4#
发表于 2004-12-12 21:39:00 | 只看该作者
以下是引用foxxp在2004-12-12 13:17:02的发言:



office2003下作的数据库,引用的内容是 : Microsoft Excel 11.0 Object Library

office2000中对应的内容好像应该是:Microsoft Excel 10.0 Object Library;

应该是:Microsoft Excel 9.0 Object Library
5#
发表于 2004-12-12 21:51:00 | 只看该作者
我错了,office XP中的对应内容是10.0版

点击这里给我发消息

6#
 楼主| 发表于 2004-12-13 04:16:00 | 只看该作者
非常感谢诸位专家的指点。明天上班后再做(家中是office2003),如有问题再来请教!谢谢!谢谢!

点击这里给我发消息

7#
 楼主| 发表于 2004-12-13 17:45:00 | 只看该作者
多谢楼上斑竹、专家的指教。office重装了一下,找到了Microsoft Excel 9.0 Object Library,数据可以转移了。谢谢各位。但是还是必须按两次Update钮才行,按第一次还是出现“运行时错误,‘1004’    ‘Range‘作用于对象‘-Application‘时失败”,不知是什么原因。
8#
发表于 2004-12-13 19:46:00 | 只看该作者
帮你把函数修改了一下,看行不行?

用这段脚本覆盖窗体的update按纽的click事件.由于每天的上传文件有限,就不给你发文件了.

Private Sub cmdUpdate_Click()

Dim xlsApp As Excel.Application

Dim xlsSheet As Excel.Worksheet

With Me.OLE未绑定20

    .Action = acOLEActivate

    .Verb = acOLEVerbOpen

End With

Set xlsApp = GetObject(, "Excel.Application")

Debug.Print xlsApp.Workbooks.Count

Set xlsSheet = xlsApp.Workbooks(xlsApp.Workbooks.Count).Worksheets(1)

xlsApp.Visible = True

On Error GoTo handle:

文本44 = xlsSheet.Range("C4").Text

文本47 = xlsSheet.Range("C5").Text

文本49 = xlsSheet.Range("C6").Text

文本51 = xlsSheet.Range("C7").Text

文本53 = xlsSheet.Range("C8").Text

文本55 = xlsSheet.Range("C9").Text

文本57 = xlsSheet.Range("C10").Text

xlsApp.Visible = False

xlsApp.Quit

Set xlsApp = Nothing

文本44.Value = 文本44

文本47.Value = 文本47

文本49.Value = 文本49

文本51.Value = 文本51

文本53.Value = 文本53

文本55.Value = 文本55

文本57.Value = 文本57

Exit Sub

handle:

   Call MsgBox("错误信息" & Err.Number & ":" & Err.Description, , "错误")

   Resume Next

End Sub

点击这里给我发消息

9#
 楼主| 发表于 2004-12-13 23:06:00 | 只看该作者
foxxp老师:真棒!一切都非常好!谢谢您,谢谢楼上各位,从各位那里又学到不少东西!
10#
发表于 2004-12-14 06:12:00 | 只看该作者
Well done, Dear FOXAP, The main problem seems at the following sentence.You:Set xlsSheet = xlsApp.Workbooks(xlsApp.Workbooks.Count).Worksheets(1)文本44 = xlsSheet.Range("C4").TextMe文本44 = xlsApp.Range("C4").Text Can u give me the details of the difference? Mr.FoxXP?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-11-26 02:55 , Processed in 0.086658 second(s), 34 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表