Board logo

標題: 有關轉貼文章"For...Next 與 For Each...Next 迴圈的基本概念"的問題 [打印本頁]

作者: oak0723-1    時間: 2010-9-5 19:21     標題: 有關轉貼文章"For...Next 與 For Each...Next 迴圈的基本概念"的問題

在"For...Next 與 For Each...Next 迴圈的基本概念"一文中程式碼
Sub zz()
Set a = Workbooks("檔案A.xls").Sheets(1)
Set b = Workbooks("檔案B.xls").Sheets(1)
lastrow = a.[A1].End(xlDown).Row
lastcol = a.[A1].End(xlToRight).Column
##問題 變數a.b為何使用set設定為物件變數,而lastcol和lastrow卻不使用物件變數set
            後面的應用上lastcol和lastrow視為哪種變數?

rb = 1
For c = 2 To lastcol
  For r = 2 To lastrow
    If a.Cells(r, c) <> "" Then
      b.Cells(rb, 3) = a.Cells(1, c)
      b.Cells(rb, 4) = a.Cells(r, 1)
      b.Cells(rb, 11) = a.Cells(r, c)
      rb = rb + 1
    End If
  Next r
Next c
End Sub
作者: Min    時間: 2010-9-5 19:34

本帖最後由 Min 於 2010-9-5 19:36 編輯

Set a = Workbooks("檔案A.xls").Sheets(1)
Set b = Workbooks("檔案B.xls").Sheets(1)
這件是物件變數阿 是工作表物件的變數!

lastrow = a.[A1].End(xlDown).Row
lastcol = a.[A1].End(xlToRight).Column
是數值變數 如integer long...

至於什麼時候要用set... 只要是"物件"就需要用set~
作者: oak0723-1    時間: 2010-9-5 19:36

回復 2# Min


    了解了~~~
感恩喔~~~~




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)