Office中国论坛/Access中国论坛

标题: 【源码示例】判断一个EXECEL文件中是否存在指定的工作表 [打印本页]

作者: 鱼儿游游    时间: 2011-10-14 15:55
标题: 【源码示例】判断一个EXECEL文件中是否存在指定的工作表
本帖最后由 鱼儿游游 于 2011-10-14 18:16 编辑

如题:判断一个EXECEL文件中是否存在指定的工作表


作者: xuwenning    时间: 2011-10-14 16:05
谢谢分享
收藏了
作者: yanghua1900363    时间: 2011-10-14 16:52

作者: yehf    时间: 2011-10-14 16:59
本帖最后由 yehf 于 2011-10-14 17:21 编辑

另外一个方法,用DAO+错误陷阱


Function b(filename As String, sheetname As String) As Boolean
    Dim rst    As DAO.Recordset
    On Error Resume Next
    Set rst = CurrentDb.OpenRecordset("SELECT *  FROM [excel 8.0;database=" & filename & "].[" & sheetname & "$]")
    'b = (Err.Description <> "'" & sheetname & "$' 不是一个有效名称。请确认它不包含无效的字符或标点,且名称不太长。")
    b = (Err = 0)
    rst.Close
    Set rst = Nothing
End Function
作者: todaynew    时间: 2011-10-14 17:10
遍历后面的代码太罗嗦,可以:
oExcelApp.quit false
Set oExcelSheet = Nothing
Set oExcelBook = Nothing
Set oExcelApp = Nothing

作者: 鱼儿游游    时间: 2011-10-14 18:10
本帖最后由 鱼儿游游 于 2011-10-14 18:15 编辑
todaynew 发表于 2011-10-14 17:10
遍历后面的代码太罗嗦,可以:
oExcelApp.quit false
Set oExcelSheet = Nothing


多谢,这样的话,会提示是否存盘的。
作者: todaynew    时间: 2011-10-14 18:19
本帖最后由 todaynew 于 2011-10-14 18:38 编辑
鱼儿游游 发表于 2011-10-14 18:10
多谢,这样的话,会提示是否存盘的。


存盘用ture,放弃存盘用false。
你这段代码没涉及到数据操作,不带后面的参数应该也不会提示存盘消息吧?

此外这个函数没什么价值吧?如果修改成带入参数为Book对象的话,才应该有实用价值。因为判断总是在某段涉及到已经打开的Book中进行某些操作时进行的。否则的话,仅仅为了判断是否存在某个sheet而打开关闭一次Excel对象,太不值得了,目的性也不强,有点为判断而判断的味道。呵呵

还有一个思路是枚举出一个book的sheet,作为列表框或者组合框的来源,这也有价值。

以上意见仅作参考。呵呵

Public Function IsExcelSheetExist(oExcelBook  As Excel.book,strSheetName as string) As Boolean
Dim oExcelSheet as Excel.Worksheet
For Each oExcelSheet In oExcelBook.Worksheets
      If oExcelSheet.Name = strSheetName Then
           IsExcelSheetExist = True
           Exit For
      End If
Next
set oExcelSheet=nothing
End Function
作者: 安庆_吴老铁    时间: 2011-10-14 20:12
学生来也
作者: ycxchen    时间: 2011-10-15 10:50
谢谢分享!楼主精神可喜!
作者: koutx    时间: 2011-10-15 13:21
收藏了
作者: fnsmydyang    时间: 2011-10-18 20:33
学习了,谢谢分享{:soso_e181:}
作者: efcndi    时间: 2011-11-24 10:37
看看
作者: wjy5888    时间: 2012-5-21 09:09
学习一下
作者: smileyoufu    时间: 2013-4-13 17:59
这个要学习
作者: xie62    时间: 2013-4-14 08:09
谢谢分享
作者: meteorxp    时间: 2013-4-14 08:50
谢谢分享!
作者: friendship    时间: 2015-5-31 06:34





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