设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

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

[帮助] 如何将数据导入到一直打开的EXCEL工作表中? 

[复制链接]
跳转到指定楼层
1#
发表于 2008-12-19 11:01:07 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
下现是一段将数据表导入到EXCEL工作表的代码,
我的问题是:

如何先判断EXCEL工作簿(往来查询结果.xls)是否打开,
如果 打开则直接导入
否则 先打开后导入

请大家指点!

Private Sub 导入EXCEL_Click()
'需引用“Microsoft Excel X.0 Object Library”
Dim oApp As Object
Dim oappwork As Excel.Workbook, oappwork_B_07PZZCT As Excel.Worksheet
Dim path As String
path = CurrentProject.path & "\往来查询结果.xls"
Set oApp = CreateObject("Excel.Application")
oApp.Visible = False
Set oappwork = oApp.Workbooks.Open(path)
Set oappwork_B_07PZZCT = oappwork.Worksheets("往来查询")
j = 3000

oappwork_B_07PZZCT.Rows("4:" & j + 1).Delete
oappwork_B_07PZZCT.Cells(3, 1) = "日 期"
oappwork_B_07PZZCT.Cells(3, 2) = "凭证号"
oappwork_B_07PZZCT.Cells(3, 3) = "摘要"
oappwork_B_07PZZCT.Cells(3, 4) = "票号"
oappwork_B_07PZZCT.Cells(3, 5) = "借方金额"
oappwork_B_07PZZCT.Cells(3, 6) = "贷方金额"
With Me.subfrm.Form.Recordset
.MoveFirst
nn = .Fields.Count
j = 4
Do
If .EOF
Then Exit
Do
Else
For i = 1 To nn - 4
oappwork_B_07PZZCT.Cells(j, 0 + i) = .Fields(i)
Next i
j = j + 1 .MoveNext
End If
Loop MsgBox "往来查询结果已经导入EXCEL", vbOKOnly + vbInformation oApp.Visible = True
End With
With Me.subfrm.Form.Recordset
.MoveFirst
n = .RecordCount

On Error Resume Next
oApp.UserControl = True
End Sub
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2008-12-19 11:43:40 | 只看该作者
[:50]
我的另外一种思路
建立xls模板
以此模板进行复制生成新的xls文件
每次导出都是打开新生成的xls文件,这样就不存在判断是否打开的问题啦
3#
发表于 2008-12-19 12:09:58 | 只看该作者
For  m = 1 To Workbooks.Count
if workbooks(m).Name="往来查询结果" then  open=true
next
if open=true then
else
endif
4#
发表于 2008-12-19 12:22:44 | 只看该作者
从你的代码看,你的excel表事先已经有了固定的列名称和行名称以及其他的格式设置(比如行高和列宽等等),是这样吗?
==========================
如果只是导出数据,对行高和列宽没有特殊的要求的话,代码要少一些。

如果有固定的列名称和行名称以及其他的格式设置(比如行高和列宽等等),就是一个一个单元的写入数据的话,代码要多一些。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-5-2 01:55 , Processed in 0.090385 second(s), 27 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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