以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  对excel文件的使用区别  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=177899)

--  作者:zsxx999ja
--  发布时间:2022/6/8 23:58:00
--  对excel文件的使用区别
1、这是对excel 那一章对文件的引用
  • Dim App As New MSExcel.Application
    Dim Wb As MSExcel.Workbook = App.WorkBooks.Add
    Wb.WorkSheets(1).name = "hhh"
    Wb.WorkSheets(1).range("A1").Value = "hhh123"
    Wb.SaveAs("d:\\123.xls")
    App.Quit
2、这是excel报表一章时对文件的引用
  • Dim Book As New XLS.Book("c:\\reports\\test.xls")
    Dim
    Sheet1 As XLS.Sheet = Book.Sheets(0)
    Book.Sheets.Add()
    \'增加一个工作表
    Dim
    Sheet2 As XLS.Sheet = Book.Sheets(1)
    \'引用新增加的

这两种应用场景的差别?

--  作者:notebook
--  发布时间:2022/6/9 1:22:00
--  
两者都能操作excel,第一种是最传统的做法,直接调用excel对象处理的;第二种是针对excel报表做过优化封装,增加了一些常用的功能,比如保存成PDF等,便于操作excel报表。
如果想完全控制excel,可以选择第一种方式;如果只是简单操作excel,如果excel报表对象能支持的,就用第二种。
下面用第二种(excel报表)方式完成第一种代码结果

Dim Book As New XLS.Book \'定义一个Excel工作簿
Dim Sheet As XLS.Sheet = Book.Sheets(0) \'引用工作簿的第一个工作表
Sheet.Name = "hhh"
Sheet(0, 0).Value = "hhh123"
Book.Save("d:\\2.xls") \'保存工作簿

你分别将上面代码和你提供的第一种代码复制到命令窗口执行,会分别在D盘生成2.xls和1.xls,你可以看到结果是一样的。