有關轉貼文章"For...Next 與 For Each...Next 迴圈的基本概念"的問題
- 帖子
- 222
- 主題
- 56
- 精華
- 0
- 積分
- 285
- 點名
- 0
- 作業系統
- window
- 軟體版本
- office2003
- 閱讀權限
- 20
- 性別
- 男
- 來自
- 台灣
- 註冊時間
- 2010-8-30
- 最後登錄
- 2024-4-22
 
|
有關轉貼文章"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 |
|
|
|
|
|
|
- 帖子
- 172
- 主題
- 39
- 精華
- 20
- 積分
- 177
- 點名
- 0
- 作業系統
- Microsoft Windows XP
- 軟體版本
- Microsoft Office 2003
- 閱讀權限
- 100
- 性別
- 男
- 來自
- 高雄
- 註冊時間
- 2010-5-1
- 最後登錄
- 2023-3-19
 
|
2#
發表於 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~ |
|
若是我回答,使您滿意,請您讓我知道!
若是我的回覆,您仍有其他見解,也請您不嗇指教!
|
|
|
|
|
- 帖子
- 222
- 主題
- 56
- 精華
- 0
- 積分
- 285
- 點名
- 0
- 作業系統
- window
- 軟體版本
- office2003
- 閱讀權限
- 20
- 性別
- 男
- 來自
- 台灣
- 註冊時間
- 2010-8-30
- 最後登錄
- 2024-4-22
 
|
3#
發表於 2010-9-5 19:36
| 只看該作者
|
|
|
|
|
|