首頁>科技>

上一章給大家分享了關於單元格Range物件的批註和對單元格的背景色設定,單元格的屬性字型的設定等,今天就不分享新的知識點了就簡單的最近這幾天分享的知識點綜合的集中在一起舉個例子給大家看看。免得大家把前面的都忘記了。

今天舉的這個例子主要是先判斷一個工作簿是否存在,如果不存在就開始新建一個工作簿,然後關閉新建的工作薄,再利用以前學過的陣列,給沒有開啟的工作薄中新增表頭,再新增資料。

這裡面使用到了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

End Sub

12
最新評論
  • 整治雙十一購物亂象,國家再次出手!該跟這些套路說再見了
  • 華為不再孤獨,愛立信諾基亞也受到警告要排除了