VBA中工作簿、工作表、单元格与数组的综合应用示例

来源:本站整理 作者:网络笔记

最佳答案今天举的这个例子主要是先判断一个工作簿是否存在,如果不存在就开始新建一个工作簿,然后关闭新建的工作薄,再利用以前学过的数组,给没有打开的工作薄中添加表头,再添加数据。这里面使用到了Workbook、Worksheet、数组、活动的工作簿ActiveWorkbook对象的属性和方法,其中还包括Rang......

今天举的这个例子主要是先判断一个工作簿是否存在,如果不存在就开始新建一个工作簿,然后关闭新建的工作薄,再利用以前学过的数组,给没有打开的工作薄中添加表头,再添加数据。

这里面使用到了Workbook、Worksheet、数组、活动的工作簿ActiveWorkbook对象的属性和方法,其中还包括Range对象及其属性方法等等。

下面一起先看看对代码的具体解释

注意:代码中的thisworkbook值得就是你已经打开正在操作的工作薄,新建的工作薄就会保存到你操作工作薄的路径下。

下面是具体的代码:

代码1:

Sub k()

Dim w As Workbook, s As Worksheet, r As Range, j As Integer

Dim arr As Variant

Dim r1 As Range, arr1 As Variant, j1 As Integer

Dim f As Variant

f = ThisWorkbook.Path & “\学生成绩表.xls”

If Len(Dir(f)) <= 0 Then

Set w = Workbooks.Add

Set s = w.Worksheets(1)

s.Name = “学生成绩表”

Set r = Worksheets(“学生成绩表”).Range(“A65536”).End(xlUp)

arr = Array(“名次”, “姓名”, “语文”, “数学”, “英语”, “总分”, “标准”)

If r.Value <> “” Then

Set r = r.Offset(1, 0)

End If

For j = 0 To 6

Worksheets(“学生成绩表”).Range(r.Address).Offset(0, j).Value = arr(j)

Next

w.SaveAs ThisWorkbook.Path & “\学生成绩表.xls”

ActiveWorkbook.Close

Else

MsgBox “文件已经存在,请换个文件名。”

End If

Workbooks.Open (f)

Set r1 = Worksheets(“学生成绩表”).Range(“A65536”).End(xlUp)

arr1 = Array(“1”, “张起”, “89”, “67”, “72”, “228”, “中等”)

If r1.Value <> “” Then

Set r1 = r1.Offset(1, 0)

End If

For j1 = 0 To 6

Worksheets(“学生成绩表”).Range(r1.Address).Offset(0, j1).Value = arr1(j1)

Next

ActiveWorkbook.Close savechanges:=True

网络笔记 学习文库

我这一生没什么理想,能治愈我的,从来都不是时间,而是内心的那份释怀和明白!

热门分类

热门工具

联系客服QQ:+