Excel开发学习笔记:查找与创建worksheet

开发环境基于VSTO,具体配置:visual studio 2010,VB .Net,excel 2007,文档级别的定制程序。

如题,我在ThisWorkbook.vb中添加了一个public函数来完成查找功能。

入参:待查找的sheet名称

返回:如果存在则返回worksheet对象,如果不存在则返回nothing
     Public  Function WorksheetExist(name  As  StringAs Excel.Worksheet  
         Try  
             Dim existSheet  As Excel.Worksheet = Globals.ThisWorkbook.Sheets(name)  
             Return existSheet  
         Catch ex  As Exception  
             Return  Nothing  
         End  Try  
      
     End Function 

 

 

创建worksheet函数,要求在现有sheet的尾部添加新的sheet。

入参:Workbook,新sheet名

返回:成功则返回新的sheet对象,失败返回nothing

     Private  Function CreatWorksheet( ByRef book  As Excel.Workbook,  ByRef name  As  StringAs Excel.Worksheet  
         Dim newSheet  As Excel.Worksheet = book.Sheets.Add(After:=book.Worksheets(book.Sheets.Count))  
         Try  
      
            newSheet.Name = name  
             Return newSheet  
         Catch ex  As Exception  
             MsgBox( " "" " + name +  " "" " +  " 不能被用作excel工作表(sheet)名称 ")  
            newSheet.Delete()  
             Return  Nothing  
         End  Try  
      
     End Function 

 

 查询与创建连起来使用,未查找到则创建的代码片段:

     Dim algoSheet  As Excel.Worksheet = Globals.ThisWorkbook.WorksheetExist(name)  
     If algoSheet  Is  Nothing  Then  
        algoSheet = CreatWorksheet(Globals.ThisWorkbook.Application.Workbooks(Globals.ThisWorkbook.Name), name)  
         If (algoSheet  Is  NothingThen  
             Continue  For  
         End  If  
     End  If 

 

转载于:https://www.cnblogs.com/pop-lar/p/5031524.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值