设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 2234|回复: 3
打印 上一主题 下一主题

请求解决不能多次输出数据到EXCEL的问题

[复制链接]
跳转到指定楼层
1#
发表于 2010-7-14 11:50:56 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我这里使用的是ACCESS 2007。

问题点:
1.复制一个EXCEL文件。
2.打开该文件,复制3个SHEET。
第一次完全成功

3.将打开的EXCEL文件关闭
4.再次重复步骤1的过程,就会出错,必须退出ACCESS,
  而且,任务管理器中有时会出现一个未关闭的EXCEL进程,
  必须将该进程关闭,重新启动ACCESS文件,才能正常运行。

求解决方法,能够解决的可以协商价格,必不食言。

本帖子中包含更多资源

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

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅

点击这里给我发消息

2#
发表于 2010-7-14 13:53:41 | 只看该作者
能否转成2003版本,新电脑没有安装2007版
3#
 楼主| 发表于 2010-7-15 19:18:14 | 只看该作者
这个附件包含ACCESS2003和ACCESS2007两个版本,请大家多帮忙了!

本帖子中包含更多资源

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

x
4#
 楼主| 发表于 2010-7-17 01:38:14 | 只看该作者
估计这个问题是由Office本身的缺陷造成的。也就是说在一个EXCEL内用COPY命令反复拷贝SHEET,就会出现工作表驻留内存不能正常释放的问题。
如果用workbooks.add()就不会有这个问题,不过这样增加的是一个空的SHEET,如果是要拷贝模版,只能打开一个workbooks,让后将某个SHEET反复拷贝到另一个WORKBOOK中去,这样不会有问题。
Dim ExcelApp As Excel.Application
Dim wbSourceBook, wbTargetBook As Workbook
Dim wsSource, wsTarget As Worksheet
Dim xlsPath As String
   
xlsPath = CurrentProject.Path + "\TEST.xls"

Set ExcelApp = New Excel.Application
Set wbSourceBook = ExcelApp.Workbooks.Open(xlsPath)
Set wbTargetBook = ExcelApp.Workbooks.Add()

ExcelApp.Visible = True

'Application.SheetsInNewWorkbook = 1
'Application.ScreenUpdating = False
Set wsSource = wbSourceBook.Sheets("sheet1")


Dim i
For i = 1 To 3

wsSource.Copy After:=wbTargetBook.Sheets(wbTargetBook.Sheets.Count)
Set wsTarget = wbTargetBook.Sheets(wbTargetBook.Sheets.Count)


Next

wbTargetBook.Sheets("sheet1").Delete
wbTargetBook.Sheets("sheet2").Delete
wbTargetBook.Sheets("sheet3").Delete

'wb.Save
wbSourceBook.Close

Set wsSource = Nothing
Set wbSourceBook = Nothing
Set ExcelApp = Nothing
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-29 04:40 , Processed in 0.084882 second(s), 28 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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