问题描述:
目前我只看到,用vb能够对已存在的excel表进行 *** 作,读取和写入。那么,如果excel表不存在,需要新建一个呢?在vb中如何实现?注意:我只需要新建excel表如何实现的代码,其他的代码不需要,我也不是菜鸟。问题一旦采用就追加100分。
解析:
一楼的没有指明
Dim xlBook As Excel.WorkBook
Set xlBook = App.Workbooks.Open("文件名")
这种语法同样要求excel已经存在才能 *** 作。
Public xlApp As Excel.Application
Public xlBook As Excel.Workbook
Public xlChar As New Excel.Chart
Public xlSheet As New Excel.Worksheet
Set xlApp = New Excel.Application
Set xlApp = CreateObject("Excel.Application")
Set xlBook = xlApp.Workbooks.Add
Set xlSheet = xlBook.Worksheets.Add
xlSheet.Cells(1, 1) = "测试" '写入内容
xlBook.SaveAs ("FILENAME") '保存文件
xlApp.Quit
Set xlApp = Nothing
本方法采用add添加excel文件和datasheet,然后用save保存。如果用xlApp.Visible=False,则自动生成文件。但是如果文件已经存在,则会d出是否覆盖的提示。因此,最好先在程序中检查文件是否已经存在,如果存在,则用普通方法打开。如果不存在,则用add添加,并保存。
1.部件-添加-可插入对象--选择excel 表格就可以在窗体添加该表格控件
2.工程-引用-Microsoft Excel 11.0 Object Library
下面给个简单的例子
Private Sub Command1_Click()
Dim xlExcel As Excel.Application
Dim xlBook As Excel.Workbook
Dim xlSheet As Excel.Worksheet
Dim AppExcel As Object
Set xlExcel = CreateObject("Excel.Application")
xlExcel.Workbooks.Open "C:\test.xls"
Set xlBook = xlExcel.Workbooks("test.xls")
Set xlSheet = xlBook.Worksheets(1)
Text1.Text = xlSheet.Cells(1, 1).Value
Text1.Text = Text1.Text &"ADD"
xlSheet.Cells(1, 1).Value = Text1.Text
Application.DisplayAlerts = False
xlBook.Close SaveChanges:=True
Application.DisplayAlerts = True
End Sub
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)