標題:
選定某個不確定數量的範圍的語法怎麼寫
[打印本頁]
作者:
woodyliu
時間:
2015-7-24 09:35
標題:
選定某個不確定數量的範圍的語法怎麼寫
大家好~最近因工作需求在自學EXCEL VBA的寫法 ,已提升某些業務的效率
工作上我有個需求,每日我必須調出前一天的資料,
筆數不一定,有時候僅有幾百幾十筆,有時候卻有上萬筆。
雖然我有寫一個是將筆數自動抓到10萬筆,但是我想要更美化相關巨集。
所以想要寫一個是,巨集會自動抓取A2:BX 的範圍。 BX為最後一筆資料,數量每天都不一樣。
我嘗試用
.End(xlDown)去代B列
或是用 .end(xlDown) 與.offset 的語法去代A列
也嘗試用 Range ("A2: i ") ,設定 for i = (這邊我嘗試用上面好幾種方式)
都是顯示與法錯誤。
昨天我爬文查了一個晚上,還是查不出個頭緒..
可以請大家告知我該用哪種語法,謝謝大家..
作者:
lpk187
時間:
2015-7-24 11:09
本帖最後由 lpk187 於 2015-7-24 11:11 編輯
回復
1#
woodyliu
我提供下列各種寫法,你用F8逐行的執行看看,在觀看的過程中請打開"區域變數視窗"來觀察變數的變化會更瞭解的
[attach]21475[/attach]
Public Sub Ex()
aa = Cells(Rows.Count, 1).End(xlUp).Row
Range("A1:B" & aa).Select
aa = Cells(Rows.Count, 1).End(xlUp).Address
Range("A1:" & aa).Select
aa1 = Cells(1, 1).End(xlDown).Row
Range("A1:B" & aa1).Select
aa1 = Cells(1, 1).End(xlDown).Address
Range("A1", aa1).Select
bb = Cells(Rows.Count, 2).End(xlUp).Row
Range("A1:B" & bb).Select
bb = Cells(Rows.Count, 2).End(xlUp).Address
Range("A1", bb).Select
bb1 = Cells(1, 2).End(xlDown).Row
Range("A1:B" & bb1).Select
bb1 = Cells(1, 2).End(xlDown).Address
Range("A1", bb1).Select
End Sub
複製代碼
作者:
woodyliu
時間:
2015-7-24 11:11
謝謝您的幫忙~~我研究一下QQ
作者:
lpk187
時間:
2015-7-24 11:20
回復
1#
woodyliu
也嘗試用
Range ("A2: i ")
,設定 for i = (這邊我嘗試用上面好幾種方式)
你上面紅字的部份語法也寫錯在雙引號中(")的字為字串,i是變數,要用連結的方式來連結才能讀到變數i的值
Range ("A2: " & i)這裡i的值必須為儲存格的位置Address,為字串
Range ("A2: B" & i)這裡i的值則是為列號Row,為數字
上面2種寫法皆可,只是定義i變數時不同罷了
作者:
woodyliu
時間:
2015-7-24 11:34
請問~
我看板上很多人在變數都設定 aa 、bb等~
請問這根直接設定 i有不同嗎?
還是說aa 、bb其實是有特別的含意跟用法
作者:
lpk187
時間:
2015-7-24 12:00
回復
5#
woodyliu
aa、bb 只是方便打字而已!
請參考VBA中的宣告變數說明
歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)