Board logo

標題: 想請問 set 物件問題 [打印本頁]

作者: handsometrowa    時間: 2019-7-17 11:04     標題: 想請問 set 物件問題

各位先進您好

今天看到一個朋友的VBA 程式編碼裡面有兩行

Set xRow1 = MySht.[L12176:Q12176]: Set xRow2 = MySht.[A5:F5] 'Range("A5:F5")
Set xTime = MySht.[Q12176]: Set xChk = MySht.[W9182]  


請問Set 給與物件這個功能     第一排 後面 .[L12176:Q12176]: Set xRow2   ....等等

為什麼可以  用一個『:』 + 『空格』  再加上  另外一個Set

這是什麼用法阿  ??
作者: bobomi    時間: 2019-7-17 15:12

本帖最後由 bobomi 於 2019-7-17 15:15 編輯

:  等效 換行的意思 ( Enter 鍵 )

除了 a=0: b=0: c=0 這種極簡短型

其他地方儘量少用
作者: handsometrowa    時間: 2019-7-17 15:21

回復 2# bobomi


了解了,謝謝前輩指導。

感謝

其實set 一條一行一個賦予物件  還是比較正統的寫法 謝謝~
作者: bobomi    時間: 2019-7-17 15:27

回復 3# handsometrowa


擠在一行的寫法 , 無非是兩種目的

(1) 不用滾滑鼠 , 一眼可縱覽
(2) 讓程式碼看起來比較少行就能辦到 , 讓人感覺比較厲害點

如果目的是 (2) 那就免了
作者: 准提部林    時間: 2019-7-17 16:11

在解讀程式碼時, 不免上上下下去比對各變數或物件的設定,
若能擠在同一畫面中直接讀取, 而免去上下滑動視窗, 這是一個取巧方法,
對剛接觸vba者, 最好還是一行一行的寫~~

另外, 寫vba也與寫文章類似, 那種寫法, 有點像"逗號", 串成一行, 像段落~~
或者, 相同判斷條件下, 將要得出的結果, 用這方法串接, 又有點像寫公式,
例如:
if a>0 then
  b = 1
  c = 5
  d = 12
end if

我習慣寫成:
if a>0 then  b = 1:  c = 5:  d = 12

看別人寫的程式碼, 會發現每人都有習性, 只要看得懂就好~~
作者: bobomi    時間: 2019-7-17 16:12

(3) 歸類 方便不用找結束點
作者: handsometrowa    時間: 2019-7-20 20:51

回復 5# 准提部林


原來還有這種用法的意思阿
受教了 謝謝~^^




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